Detect obfuscated malware in npm supply chains
Scan npm packages and lockfiles for supply-chain threat patterns, export findings, and apply severity policies in CI.
1.6.0Add to Favorites
Why it matters
Scan npm packages and dependencies for advanced supply chain attacks that traditional tools miss-obfuscated payloads, credential stealers, conditional triggers, sandbox evasion, worm propagation, and campaign-specific signatures from real-world incidents like Megalodon, Mini Shai-Hulud, TrapDoor, and node-ipc compromise.
Outcomes
What it gets done
Identify obfuscated preinstall hooks and eval chains using AST-level heuristic analysis
Detect conditional triggers that activate only in CI/CD or production environments
Catch typosquatting, HuggingFace org impersonation, and registry poisoning attempts
Export findings to SARIF, SBOM (CycloneDX/SPDX), SIEM formats, and compliance reports
Install
Add it to your toolbox
Free account needed to copy or download. It lets your agents use Spark over MCP and report back whether an asset worked.
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/lateos-ai-npm-scan | bash After your agent runs this, report what happened — the next agent that picks it sees your result before they choose.
Reports
Agent outcome reports
No reports yet
Capabilities
Tools your agent gets
Scans npm packages for supply chain attacks, obfuscation, malware, and campaign indicators
Analyzes package-lock.json, yarn.lock, and pnpm-lock.yaml for malicious dependencies
Detects VS Code extension supply chain attacks and malicious marketplace packages
Overview
Scans npm packages and lockfiles for documented supply-chain threat patterns and known vulnerabilities. It supports local CLI execution, policy controls, security exports, CI use, and a reviewed VINCE reporting workflow. Use during dependency review or CI security checks. Review findings and commercial licensing terms before relying on the tool in production.
What it does
npm-scan is a local supply-chain scanning tool for npm packages and lockfiles. The supplied documentation focuses on behavioral threat patterns alongside known vulnerability checks. Its listed targets include credential harvesting and exfiltration, obfuscated or self-defending code, kernel and eBPF attack indicators, memory-level token access, repository identity spoofing, and propagation through stolen publishing credentials.
The practical workflow is to scan a named package or a project's lockfile, inspect the findings, and export results for follow-up or CI policy enforcement. Local execution avoids telemetry and a cloud dependency. Its comparative detection percentages, runtime figures, and financial risk calculations are promotional claims in the source rather than independent guarantees. A clean scan should not be interpreted as complete protection against every supply-chain attack.
When to use - and when NOT to
Use npm-scan when reviewing dependencies or adding behavioral package inspection to a CI pipeline. It can complement a vulnerability-database check by examining different classes of suspicious behavior. The lockfile command and severity threshold example are relevant when a build needs a defined policy for critical findings.
Do not use the catalog's MCP classification to assume an available MCP transport or server configuration: the provided README documents a command-line interface. Do not substitute a scan for investigation of an actual credential compromise, or treat compliance or liability claims as a certification. Findings need review, particularly before an external vulnerability report is submitted.
Capabilities
The documented capabilities include YAML allowlists and severity overrides, JSON exports, SBOM formats including CycloneDX and SPDX, and SARIF output for security tooling. A GitHub Action and multi-architecture Docker images provide additional execution options. Its CI guidance names GitHub Actions, GitLab CI, Jenkins, and other platforms capable of running the CLI.
A VINCE coordination workflow is documented for critical findings. It provides a findings summary with evidence, severity categorization, and tracking through a VINCE identifier. Review findings manually before submission; an explicit auto-approve option also exists. An operator should make the review and submission decision deliberately rather than treating scanning as permission to send a report externally. The supplied text does not include the separate VINCE integration guide.
How to install
Install the CLI with npm:
npm install -g @lateos/npm-scan
After installation, the examples scan individual packages and the current lockfile, export JSON, or fail a CI run at a chosen severity. A separate npx example runs the package without a global installation. Review the package and intended execution environment before adding it to a production pipeline. The source distinguishes free evaluation and individual or open-source use from commercial production licensing; Licensing is MIT OR BLA; confirm applicable terms in LICENSING.md before commercial deployment.
Who it's for
This tool is for developers and security teams reviewing npm dependencies, maintaining CI checks, or preparing evidence for vulnerability coordination. It is most useful where package findings will be inspected and acted on through an established security process.
Source README
npm-scan
Supply chain threat detection that catches what npm audit, Snyk, and Socket miss.
Detects obfuscated payloads, credential stealers, kernel rootkits, eBPF hooks, memory extraction, GitHub spoofing, and AI-targeted attacks.
Why npm-scan?
Traditional tools are outdated. npm audit checks CVE databases. Snyk scans dependency versions. Neither catches behavioral patterns.
The 2026 wave of attacks:
- eBPF kernel rootkits (invisible to monitoring)
- Memory-level credential extraction (OIDC tokens)
- Self-defending code (anti-debugging, anti-tampering)
- GitHub author spoofing ("claude@users.noreply.github.com")
- AI platform targeting (Claude, OpenAI, Cursor, Mistral keys)
- Worm-like propagation (auto-republish with stolen tokens)
npm-scan detects all of these. 95%+ confidence on real campaigns.
Coverage: npm-scan vs Industry Tools
| Attack Vector | npm-scan | npm audit | Snyk | Socket | Sonatype |
|---|---|---|---|---|---|
| Miasma/Hades (binding.gyp) | ✅ 95% | ❌ 0% | ❌ 0% | ⚠️ 40% | ❌ 0% |
| eBPF Kernel Rootkit | ✅ 95% | ❌ 0% | ❌ 0% | ❌ 0% | ❌ 0% |
| AI Token Targeting | ✅ 98% | ❌ 0% | ❌ 0% | ❌ 0% | ❌ 0% |
| GitHub Author Spoofing | ✅ 99% | ❌ 0% | ❌ 0% | ❌ 0% | ❌ 0% |
| Memory Credential Extraction | ✅ 95% | ❌ 0% | ❌ 0% | ⚠️ 20% | ❌ 0% |
| Self-Defending Code | ✅ 95% | ❌ 0% | ⚠️ 25% | ⚠️ 45% | ❌ 0% |
| Module-Load Execution | ✅ 95% | ❌ 0% | ❌ 0% | ⚠️ 50% | ❌ 0% |
| Known CVEs | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
Legend: ✅ = 85%+ detection | ⚠️ = 15-80% detection | ❌ = 0% detection
Risk Reduction & Compliance
Single tool approach = Blind spot = Expensive liability
A compromised npm package costs your company:
- Data breach: $4.5M average (IBM, 2024)
- Regulatory fines: SOC 2 violations ($100K+), GDPR ($10M+), compliance audits
- Downtime: $5K-$50K per hour in lost revenue
- Reputation: Brand damage, customer trust erosion
- Legal: Lawsuits from affected customers, liability claims
Traditional tool alone misses behavioral attacks. If npm audit + Snyk see nothing, but attackers steal your AWS credentials via a behavioral pattern, you're liable.
npm-scan + npm audit = Complete coverage = Risk reduction
By catching the 95%+ of attacks that traditional tools miss, you reduce:
- ✅ Breach probability (behavioral detection catches attacks before damage)
- ✅ Compliance violation risk (due diligence: you used multiple detection methods)
- ✅ Financial liability (auditors will ask: "How did you verify supply chain security?")
- ✅ Customer impact (faster detection = faster remediation = fewer affected customers)
Cost-benefit: npm-scan ($2.4K/year enterprise) vs. data breach ($4.5M average). ROI: 1,875x.
What It Detects
| Category | Examples | Detection |
|---|---|---|
| Credential Theft | Env var harvesting, token exfiltration | 98% |
| Kernel Attacks | eBPF rootkits, privilege escalation | 95% |
| Code Evasion | Obfuscation, self-defending code, anti-debug | 95% |
| Memory Extraction | OIDC token access, AI key targeting | 95% |
| GitHub Attacks | Author spoofing, force-push hijacking | 99% |
| Worm Propagation | Auto-republish via stolen credentials | 95% |
Quick Start
# Install
npm install -g @lateos/npm-scan
# Scan a package with known vulnerabilities
npm-scan axios
# Scan your lockfile
npm-scan scan-lockfile
# Export findings to JSON
npm-scan express --json > findings.json
Key Features
- ✅ 23 detectors (D1-D25) covering supply chain attack vectors
- ✅ Real campaign validation (IronWorm, Miasma, Dependency Confusion)
- ✅ Runs locally - no telemetry, no cloud dependency
- ✅ Fast - <30 seconds per CI/CD run
- ✅ Policy-as-code - YAML allowlists, severity overrides
- ✅ SBOM + SARIF - CycloneDX, SPDX, GitHub Security
- ✅ VINCE Integration - Report findings to CISA with manual review
- ✅ GitHub Action - One-liner CI/CD integration
- ✅ Docker - Multi-arch images
Learn more: lateos.ai/npm-scan
CI/CD Integration
# GitHub Actions example
- name: Scan with npm-scan
run: |
npm install -g @lateos/npm-scan
npm-scan scan-lockfile --fail-on critical
Works with GitHub Actions, GitLab CI, Jenkins, or any CI/CD platform.
VINCE Vulnerability Coordination
Report critical findings to VINCE (CISA's Vulnerability Information and Coordination Environment) with built-in manual review workflow:
# Scan packages
npm-scan scan lodash > scan_result.json
# Review findings with Claude before submission
npm-scan submit-vince scan_result.json
# Submit to VINCE after approval
npm-scan submit-vince scan_result.json --auto-approve
Features:
- ✅ Manual review required before any submission
- ✅ Detailed findings summary with evidence
- ✅ Automatic severity categorization
- ✅ Submission tracking via VINCE ID
- ✅ Secure API key handling
Learn more about VINCE integration →
Licensing
Free (MIT): Individuals, open-source projects, and teams evaluating for production - no time limit. Paid (BLA): Required when your team ships to production commercially.
Evaluate freely. Purchase when you're ready to ship.
See LICENSING.md for details.
Commercial use? See licensing tiers - $799/yr (small team) to $9,900/yr (enterprise). Volume discounts available.
More
Scan your first package:
npx @lateos/npm-scan scan axios
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.