NuGetDefense.Lib
3.2.0-prerelease
See the version list below for details.
dotnet add package NuGetDefense.Lib --version 3.2.0-prerelease
NuGet\Install-Package NuGetDefense.Lib -Version 3.2.0-prerelease
<PackageReference Include="NuGetDefense.Lib" Version="3.2.0-prerelease" />
paket add NuGetDefense.Lib --version 3.2.0-prerelease
#r "nuget: NuGetDefense.Lib, 3.2.0-prerelease"
// Install NuGetDefense.Lib as a Cake Addin #addin nuget:?package=NuGetDefense.Lib&version=3.2.0-prerelease&prerelease // Install NuGetDefense.Lib as a Cake Tool #tool nuget:?package=NuGetDefense.Lib&version=3.2.0-prerelease&prerelease
An MSBuildTask that checks for known vulnerabilities. Inspired by OWASP SafeNuGet.
Docs
View the full documentation for NuGetDefense here
3.x preview documentation can be found by running dotnet /path/to/NuGetDefense.dll -?
Prerelease
This prerelease uses the NVD 2.0 API and does not support offline NVD scanning. If you need offline scanning, wait for a future release or use the current stable release.
Features
- Uses Multiple Sources to check for known vulnerabilities in third-party libraries (NuGet packages)
- OSS Index
- National Vulnerability Database (Optionally Self-Updating)
- GitHub Security Advisory Database
- Google's Open Source Vulnerabilities Database (Coming Soon!)
- Simple installation/configuration: the NuGet Package is all you need.
- dotnet Global Tool for those who want to run it manually or just in the CI
- Transitive Dependency Checking
- SDK style projects only (older project format is not supported by the dotnet cli)
- Uses the versions resolved by the dotnet cli at build
- Project Reference Scanning
- Scan all projects in a hierarchy by installing NuGet Defense to the top level package
- Allow breaking the build based on severity of vulnerability.
- Ignore specific vulnerabilities/packages.
- Sensitive/Internal Packages filtering
- Don't send packages that are sensitive/internal to remote vulnerability sources
- Caching to prevent excess calls and hitting rate limits on API's
- Blocklisting NuGet Packages
- Allowlisting NuGet Packages
- MIT Licensed
- Consumable NuGet packages for bundling NuGetDefense scanners into your own software
Requirements
- NuGetDefense v1.x is built only in .Net Core 3.1 so you will need the runtime/SDK installed.
- NuGetDefense v2.x is built only in .Net 5.0 so you will need the runtime/SDK installed. (.Net 5.0 is our of support)
- NuGetDefense v3.x is built only in .Net 6.0 so you will need the runtime/SDK installed.
Unsupported Versions
- Official Support follows support for the underlying framework.
- Supporters can request support of unsupported versions (such as v2.x running on .Net 5) but are advised to use a
supported runtime (for better overall security)
- .Net 5 projects can use 3.x as long as the .Net 6 runtime is installed.
How does it work?
NuGetDefense is a bundled dotnet tool that runs using an MSBuild ExecTask after your project finishes building.
Love it? Support it
You can sponsor this project on Github and Patreon. The funds will be used to pay for software licenses and cloud/hardware costs that keep my projects running.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- ByteDev.DotNet (>= 7.2.1)
- Microsoft.Data.Sqlite (>= 7.0.5)
- NuGet.Versioning (>= 6.5.0)
- NuGetDefense.Core (>= 2.0.5)
- NuGetDefense.GitHubAdvisoryDatabase (>= 2.0.3)
- NuGetDefense.NVD (>= 2.1.0-prelease)
- NuGetDefense.OSSIndex (>= 2.1.0)
- Serilog.Sinks.Console (>= 4.1.0)
- Serilog.Sinks.File (>= 5.0.0)
- System.Text.Json (>= 7.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.1.3.1 | 101 | 7/13/2024 |
4.1.3 | 101 | 6/1/2024 |
4.1.2 | 82 | 5/22/2024 |
4.1.0 | 76 | 5/14/2024 |
4.1.0-pre0002 | 85 | 4/25/2024 |
4.1.0-pre0001 | 109 | 4/17/2024 |
4.0.5 | 155 | 4/25/2024 |
4.0.4 | 128 | 3/16/2024 |
4.0.3 | 129 | 3/3/2024 |
4.0.2 | 131 | 2/25/2024 |
4.0.1 | 150 | 2/14/2024 |
4.0.0-prerelase1 | 173 | 12/20/2023 |
3.2.5 | 116 | 4/25/2024 |
3.2.4 | 123 | 3/16/2024 |
3.2.3 | 133 | 3/3/2024 |
3.2.2 | 120 | 2/25/2024 |
3.2.1 | 107 | 2/14/2024 |
3.2.0 | 231 | 12/14/2023 |
3.2.0-prerelease7 | 126 | 12/13/2023 |
3.2.0-prerelease6 | 170 | 7/30/2023 |
3.2.0-prerelease4 | 130 | 6/16/2023 |
3.2.0-prerelease2 | 158 | 6/3/2023 |
3.2.0-prerelease | 151 | 5/13/2023 |
3.1.1 | 277 | 3/24/2023 |
3.1.0 | 200 | 3/24/2023 |
3.0.11.1 | 251 | 3/6/2023 |
3.0.11 | 231 | 3/5/2023 |
3.0.10 | 310 | 1/15/2023 |
3.0.9 | 304 | 12/11/2022 |
3.0.8 | 577 | 10/30/2022 |
3.0.7 | 434 | 7/19/2022 |
3.0.5 | 449 | 7/7/2022 |
3.0.4 | 451 | 6/26/2022 |
3.0.3 | 134 | 6/22/2022 |
3.0.2 | 123 | 6/16/2022 |
3.0.1 | 157 | 2/27/2022 |
3.0.0 | 147 | 1/22/2022 |
3.0.0-pre0017 | 163 | 11/17/2021 |
3.0.0-pre0012 | 239 | 11/6/2021 |
3.0.0-pre0011 | 150 | 11/1/2021 |
3.0.0-pre0007 | 251 | 10/16/2021 |
3.0.0-pre0006 | 146 | 9/30/2021 |
3.0.0-pre0004 | 155 | 8/10/2021 |
3.0.0-pre0002 | 148 | 8/5/2021 |
3.0.0-pre0001 | 223 | 7/30/2021 |