Skip to main content
Software Composition Analysis (SCA) scans your dependencies and third-party libraries for known vulnerabilities using deterministic CVE matching against vulnerability databases.

How SCA Works

SCA performs deterministic dependency scanning:
  1. Dependency Discovery: Analyzes package manifests to build complete dependency tree
  2. Vulnerability Matching: Queries vulnerability databases (NVD, GitHub Advisory, OSV) for known CVEs
  3. Version Analysis: Identifies vulnerable versions and available fixes
  4. License Detection: Analyzes license information for compliance
Powered by: Trivy (industry-standard vulnerability scanner)

Coverage

SCA scans dependencies across all major programming ecosystems.

Package Managers Supported

npm

JavaScript/TypeScript

pip

Python packages

Maven

Java dependencies

NuGet

.NET packages

Go Modules

Go dependencies

Bundler

Ruby gems

Transitive Dependencies

SCA analyzes your entire dependency tree, including transitive dependencies. View complete SCA support matrix →

What SCA Finds

  • CVE vulnerabilities: Known security issues in dependencies with CVE identifiers
  • Outdated packages: Dependencies with available security updates
  • Vulnerable transitive dependencies: Issues in sub-dependencies
  • License violations: Incompatible or risky licenses

Vulnerability Intelligence

SCA queries multiple vulnerability databases:
  • NVD (National Vulnerability Database)
  • GitHub Security Advisories
  • OSV (Open Source Vulnerabilities)
  • Vendor security bulletins
  • Language-specific advisory databases
Each finding includes CVSS scores and EPSS scores for prioritization.

Best Practices

  • Scan dependencies on every build
  • Prioritize high EPSS vulnerabilities
  • Update direct dependencies first
  • Use lock files for reproducible builds
  • Monitor EPSS score changes

Next Steps