Я создал тестовый пакет NuGet, который определяет зависимость от jQuery 1.4.2. XRay правильно определяет проблемы безопасности в jQuery при загрузке на мой сервер Artifactory NuGet. Однако, когда я загружаю свой тестовый пакет NuGet, в котором jQuery 1.4.2 указывается в качестве зависимости, XRay не отмечает мой пакет как уязвимый.
1) Проверено, что пакет Nuget jQuery 1.4.2 на моем сервере Artifactory правильно определен как уязвимый.
2) В мой тестовый пакет добавлена зависимость, в которой указан jQuery 1.4.2. (Я подозревал проблему чувствительности к регистру, поэтому я также попробовал использовать строчную зависимость как «jquery»).
3) Пробовал другие известные уязвимые пакеты помимо jQuery
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>RogerCruz.VulnerabilitiesGalore</id>
<title>VulnerabilitiesGalore</title>
<version>1.0.4.0</version>
<owners>Roger Cruz</owners>
<authors>Roger Cruz</authors>
<releaseNotes>A package that depends on known vulnerable packages. Use this to test vulnerability scanners.</releaseNotes>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Test package with known vulnerabilities</description>
<copyright>Copyright Roger Cruz</copyright>
<dependencies>
<dependency id="jQuery" version="[1.4.2]"/>
</dependencies>
</metadata>
<files>
</files>
</package>
Это команды, которые я использую для создания своего тестового пакета NuGet и отправки их в пробные экземпляры облака Artifactory + XRay.
nuget.exe pack VulnerabilitiesGalore.nuspec
nuget push .\RogerCruz.VulnerabilitiesGalore.1.0.4.nupkg -Source Trial
Artifactory сообщает, что у моего тестового пакета есть одна зависимость. При просмотре пакета вы можете увидеть следующее свойство.
nuget.dependency jQuery:[1.4.2]:
Во всех моих тестовых попытках XRay не определяет мой тестовый пакет (RogerCruz.VulnerabilitiesGalore) как уязвимый, несмотря на наличие указанной зависимости от уязвимого jQuery 1.4.2.
Я ожидаю, что он должен был обнаружить это из-за этого утверждения:
«Глубокое рекурсивное сканирование на всех уровнях пакета NuGet. Xray рекурсивно удаляет различные уровни ваших пакетов NuGet и их зависимости, гарантируя, что каждый программный артефакт, включенный в ваше программное обеспечение, был просканирован на наличие проблем и уязвимостей».