Share via


NuGet-Warnungen NU1901, NU1902, NU1903, NU1904

warning NU1902: Package 'NuGet.Protocol' 5.11.2 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-g3q9-xf95-8hp5

Der Warnungscode ändert sich abhängig vom bekannten Schweregrad der Verwundbarkeit:

Warnungscode Severity
NU1901 niedrig
NU1902 moderat
NU1903 high
NU1904 Kritisch

Abgang

Ein Paket, das für Ihr Projekt wiederhergestellt wurde, weist eine bekannte Verwundbarkeit auf.

Weitere Informationen finden Sie in der Dokumentation über die Überwachung von Paketen.

Lösung

Das Upgrade auf eine neuere Version des Pakets wird wahrscheinlich die Warnung beheben. Sie können die von der Verwundbarkeitsempfehlung bereitgestellte URL überprüfen, um zu sehen, welche Versionen des Pakets behoben wurden, oder überprüfen Sie die konfigurierten Paketquellen, um zu sehen, welche Versionen des Pakets verfügbar sind. Die Benutzeroberfläche des Paketmanagers von Visual Studio kann anzeigen, welche Paketversionen betroffen sind und welche keine bekannten Sicherheitslücken aufweisen.

Wenn Sie nicht über Verwundbarkeiten benachrichtigt werden möchten, die weniger schwerwiegend sind als eine Ebene, mit der Sie vertraut sind, können Sie die Projektdatei bearbeiten und eine MSBuild-Eigenschaft NuGetAuditLevel hinzufügen, wobei der Wert auf low, moderate, high oder critical gesetzt ist. Beispiel: <NuGetAuditLevel>high</NuGetAuditLevel>.

Wenn diese Warnungen dazu führen, dass die Wiederherstellung fehlschlägt, weil Sie TreatWarningsAsErrors verwenden, können Sie <WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors> hinzufügen, damit diese Codes als Warnungen erhalten bleiben.

Wenn Sie nicht möchten, dass NuGet während der Wiederherstellung nach Paketen mit bekannten Sicherheitslücken sucht, fügen Sie ein <NuGetAudit>false</NuGetAudit> in <PropertyGroup> Ihre Projektdatei oder eine Directory.Build.props-Datei ein.

Hinweis

Die erste Version von NuGetAudit bietet keine Möglichkeit, bestimmte Hinweise (URLs) zu unterdrücken. Es ist ein Feature, das wir auf der Grundlage der Priorisierung anderer Verbesserungen hinzufügen wollen.

Als Ausgleich können Sie ein entsprechendes NoWarn in Ihre PackageReference-Deklarationen einfügen. Beispiel: <PackageReference Include="Contoso.Library" Version="1.0.0" NoWarn="NU1901" />. Beachten Sie jedoch, dass dadurch keine neuen Verwundbarkeiten desselben Schweregrads gemeldet werden.