trivy OWASP Dependency-Track

OWASP Dependency-Track fully supports importing CycloneDX SBOMs in JSON format (the default when you use --format cyclonedx):

trivy fs --scanners vuln,secret,misconfig --format cyclonedx --output trivy_results/combined.json /usr/src/ragflow

This generates a valid CycloneDX JSON SBOM (typically specVersion 1.4–1.6 depending on your Trivy version in 2026; Dependency-Track handles these well, usually up through 1.6 in versions 4.13+).

Dependency-Track focuses on ingesting the component inventory (libraries, packages, OS packages, etc.) from the SBOM and correlating them against its vulnerability databases (NVD, OSS Index, GitHub Advisories, etc.). It will not directly display Trivy’s detected vulnerabilities, secrets, or misconfigurations from the SBOM — those extra scanner findings (in vulnerabilities, secrets, service extensions) are mostly ignored during import. Instead, Dependency-Track re-analyzes the components independently for the most up-to-date vuln data.

Step-by-Step Guide to Import Your combined.json into Dependency-Track

1. Access Dependency-Track Web UI

2. Create or Select a Project

3. Upload the CycloneDX SBOM

4. Wait for Processing & View Results

image

Alternative: Upload via API (for automation / CI/CD)

Use curl (replace values):

# Get your API key from Administration → Access Management → Teams → (your team) → API Keys
API_KEY="your_long_api_key_here"
PROJECT_UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"   # from project URL or API

curl -X "PUT" "http://your-dtrack-host:8080/api/v1/bom" \
     -H "Content-Type: multipart/form-data" \
     -H "X-Api-Key: $API_KEY" \
     -F "project=$PROJECT_UUID" \
     -F "bom=@trivy_results/combined.json"

Success returns HTTP 200/201.

Important Notes & Limitations