Dependency Management

Ensuring the dependencies of your codebase are secure

About

Dependency management security is a crucial aspect of software development that focuses on mitigating risks associated with the use of third-party libraries or components, often referred to as dependencies. In modern software development, it's common to use a variety of these dependencies to avoid "reinventing the wheel" for common or complex tasks. However, these dependencies can have vulnerabilities that, if left unmanaged, can expose the software, and potentially the wider system, to security risks.

From the Static Analysis section, these tools covers "Dependency management":

  • GitHub:

    • Dependabot

    • GitHub Advanced Security (for orgs, enterprises or private repos)

  • Snyk:

    • Snyk Open Source (SCA)

    • Snyk Container

  • Trivy

Other Tools / Solutions / Products

Generic

  • OWASP Dependency-Track (web): an intelligent Component Analysis platform that allows organizations to identify and reduce risk in the software supply chain.

  • OWASP Dependency-Check (web): a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.

  • Mend Renovate (web): Universal dependency update tool that fits into your workflows.

  • Confused: a tool to check for dependency confusion vulnerabilities in multiple package management systems.

npm/js ecosystems

  • npm audit: vulnerable package auditing for packages built into the npm CLI.

  • Bundlephobia: find the cost of adding a npm package to your bundle.

  • Socket: fights vulnerabilities and provides visibility, defense-in-depth, and proactive supply chain protection for JavaScript and Python dependencies.

  • Open Source Insights - deps.dev: Open Source Insights is a service developed and hosted by Google to help developers better understand the structure, construction, and security of open source software packages.

  • Overlay: a browser extension helping developers evaluate open source packages before picking them.

  • is website vulnerable: finds publicly known security vulnerabilities in a website's frontend JavaScript libraries.

  • retire.js (web): scanner detecting the use of JavaScript libraries with known vulnerabilities. Can also generate an SBOM of the libraries it finds.

Python ecosystem

  • pyupio safety: safety checks Python dependencies for known security vulnerabilities and suggests the proper remediations for vulnerabilities detected.

Ruby ecosystem

dotnet ecosystem

  • ConfusedDotnet: a tool for checking for lingering free namespaces for private package names referenced in dependency configuration for Nuget (nuget) packages.config or the new PackageReference style.

Last updated