Overview
The supply chain scanner analyzes your project’s dependency manifests for risks that could allow an attacker to inject malicious code during a build. It runs onscan repo and scan github targets.
Checks
Lockfile check
Severity: HIGH | Confidence: 85% Detects projects that declare dependencies without a lockfile. Without a lockfile,npm install or pip install can silently install different versions on each run — including versions with newly disclosed vulnerabilities.
Detected for:
- npm: missing
package-lock.jsonoryarn.lockorpnpm-lock.yaml - Python: missing
Pipfile.lockorpoetry.lock(whenPipfileorpyproject.tomlexists)
Floating version check (npm)
Severity: MEDIUM | Confidence: 75% Detects npm packages declared with floating version ranges (^, ~, *, latest). These ranges allow patch and minor updates to be pulled in automatically, which can introduce breaking changes or compromised packages.
Dependency confusion check
Severity: HIGH | Confidence: 70% Detects package names that look like internal scoped packages (@company/internal-tool) but may not be published to the public npm registry. Dependency confusion attacks trick package managers into downloading a malicious public package with the same name as an internal one.
How it works: The scanner flags scoped packages (@org/name) and checks if the organization namespace could be registered publicly. It also looks for import patterns that suggest private registry use without explicit registry configuration.
Remediation:
CVE check (OSV.dev)
Severity: Varies | Confidence: 90% When--check-cves is passed, ZenVeil queries the Open Source Vulnerabilities database for known CVEs in your pinned dependencies. This requires network access.
- npm (
package-lock.json) - PyPI (
requirements.txt,Pipfile.lock,poetry.lock)
Sample output
Why supply chain security matters
The 2020 SolarWinds attack compromised 18,000 organizations by injecting malicious code into a software build pipeline. The 2021ua-parser-js attack affected millions of projects when an attacker published a malicious version of a popular npm package. The colors and faker incidents showed how a single maintainer decision can sabotage thousands of downstream projects.
Your supply chain is only as secure as your weakest dependency. ZenVeil gives you visibility before it’s a headline.