@lateos/npm-scan: análisis estático y conductual para la cadena de suministro de npm

Fuentes: @lateos/npm-scan: static and behavioral analysis for npm supply chain security
Imagen generada por IA con el prompt: Dark terminal screen with lines of javascript code being scanned, red warning highlights on suspicious snippets, cyber security aesthetic, abstract data streams, no logos no faces
Imagen generada con IA

@lateos/npm-scan es una herramienta de seguridad de código abierto que realiza análisis estático y conductual sobre paquetes del ecosistema npm —y, parcialmente, de PyPI— para detectar amenazas avanzadas en la cadena de suministro de software. A diferencia de npm audit, Snyk o Socket, la herramienta se centra en ataques contemporáneos que eluden las comprobaciones tradicionales de CVEs: payloads ofuscados, ladrones de credenciales, activaciones condicionales, evasión de sandbox y propagación tipo gusano a través de dependencias transitivas.

El proyecto surge como respuesta a una oleada de campañas de 2025–2026 que han sofisticado los ataques más allá del typosquatting simple. Entre los incidentes que el repositorio documenta como detectables se encuentran la campaña Megalodon (más de 5.500 repositorios comprometidos mediante PRs falsos en GitHub e inyección de workflows), el gusano Mini Shai-Hulud en tres oleadas que afectaron a TanStack, AntV/atool y la extensión Nx Console para VS Code (CVE-2026-48027), la campaña cross-ecosystem TrapDoor en npm, PyPI y Crates.io, el compromiso de node-ipc mediante un dominio de mantenedor caducado (822.000 descargas semanales), el typosquatting masivo desde la cuenta vpmdhaj y el envenenamiento del registro de axios. También incorpora detección de suplantación de organizaciones en HuggingFace y la vulnerabilidad BadHost (CVE-2026-48710) en Starlette, que afecta a FastAPI, vLLM, LiteLLM y servidores MCP.

Técnicamente combina inspección AST a nivel heurístico, análisis de scripts de ciclo de vida, fingerprinting de payloads conocidos, verificación de hashes de tarballs, detección de anomalías CJS/ESM y patrones de exfiltración (DNS TXT tunneling, GitHub C2 dead-drop, credenciales AWS IMDSv2). Su taxonomía interna (serie ATK) clasifica once tipos de ataque y los mapea al marco NIST 800-161. Ofrece SBOM en CycloneDX y SPDX, SARIF v2.1 integrable con GitHub Code Scanning, informes de cumplimiento para NIST 800-161 y el EU Cyber Resilience Act, y exportación a SIEM (CEF, ECS, Sentinel, QRadar).

Está pensada para desarrolladores, equipos DevSecOps y CISO que requieren análisis reproducible y local —sin telemetría, sin dependencia de la nube— ejecutable en pipelines CI/CD mediante política como código YAML. Resulta especialmente útil para auditar monorepos, extensiones de VS Code (--vsix) y manifiestos de Python, aunque su radio principal sigue siendo npm. Como limitaciones, su cobertura Python es todavía focalizada (BadHost y cadenas asociadas) y exige actualización continua de firmas para seguir el ritmo de campañas emergentes.