
Scanner di endpoint sviluppatore in sola lettura per metadati di pacchetti, estensioni e strumenti di sviluppo su disco, realizzato per verificare l'esposizione a compromissioni note della catena di fornitura software.
Cataloghi di esposizione mantenuti per campagne recenti della supply-chain, costruiti a partire da report pubblici di threat intelligence con Perplexity Computer e aggiornati tramite PR man mano che vengono segnalate nuove campagne.
Passa un catalogo a una scansione con --exposure-catalog <path>. Verifica le voci rispetto agli avvisi correnti prima dell'uso in produzione.
| File | Campagna | Fonte |
|---|---|---|
mastra-2026-06-17.json | Compromesso della supply-chain npm di Mastra (141 pacchetti / 141 versioni tra @mastra/* più create-mastra e la dipendenza typosquat [email protected] che ha fornito un infostealer cross-platform tramite postinstall) | Socket, 2026-06-17 |
mini-shai-hulud-leoplatform-2026-06-24.json | Mini Shai-Hulud / Miasma (variante Hades) ondata LeoPlatform/RStreams (account npm czirker compromesso; 26 pacchetti npm + 1 modulo Go / 27 versioni; hook di installazione "Phantom Gyp" binding.gyp, infostealer staged per Bun, marker "Alright Lets See If This Works" dead-drop) | Socket, 2026-06-24; OX Security, 2026-06-24 |
mini-shai-hulud.json | Compromesso Mini/Shai-Hulud maggio 2026 su npm e PyPI (tabella dei pacchetti affetti OX Security) | Incrociato con Fleet, Socket, Snyk, Mistral, TanStack, The Hacker News |
mini-shai-hulud-redhat-cloud-services.json | Compromesso Mini Shai-Hulud di Red Hat Cloud Services (pacchetti npm @redhat-cloud-services) (32 pacchetti / 95 versioni; marcatore worm "Miasma: The Spreading Blight") | Socket, 2026-06-01 |
laravel-lang-2026-05-23.json | Compromesso della supply-chain Laravel Lang Composer/Packagist attraverso laravel-lang/lang, laravel-lang/http-statuses, laravel-lang/attributes e laravel-lang/actions | Socket, 2026-05-23 |
nx-console-vscode-2026-05-18.json | Compromesso dell'estensione VS Code Nx Console (nrwl.angular-console 18.95.0) pubblicato sul VS Code Marketplace il 2026-05-18 (OpenVSX non interessato; risolto in 18.100.0+) | StepSecurity, 2026-05-18 |
antv-mini-shai-hulud.json | Ondata worm AntV / Mini Shai-Hulud maggio 2026 su npm (324 pacchetti / 643 versioni su npm e PyPI; limitato agli artefatti rilevati il o dopo il 2026-05-13) | Socket, 2026-05-19 |
node-ipc-credential-stealer.json | Compromesso node-ipc npm 2026-05 con furto di credenziali (7 versioni dannose) | Socket, 2026-05-14 |
shopsprint-decimal-typosquat.json | Typosquat Go github.com/shopsprint/decimal v1.3.3 con backdoor DNS TXT | Socket, 2026-05-19 |
gemstuffer.json | Campagna di esfiltrazione RubyGems GemStuffer (123 gemme / 155 versioni) rivolta ai governi locali del Regno Unito | Socket, 2026-05-13 |
glassworm.json | Worm IDE auto-propagante GlassWorm su Open VSX / VS Code (caricatore Unicode invisibile, distribuzione transitiva tramite extensionPack/Dependencies, C2 Solana memo, furto credenziali/wallet); 243 pacchetti editor-extension / 381 versioni + 2 pacchetti npm / 2 versioni (245 voci / 383 versioni) | CSV campagna GlassWorm v2 Socket e report transitivo Socket, 2026-03-13; integrato con Koi Security, 2025-10-18, Checkmarx, 2026-03 e Sonatype, 2026-03-17 |
trapdoor-crypto-stealer.json | Rubacredenziali/wallet cross-ecosistema TrapDoor Crypto Stealer su npm, PyPI e Cargo/Crates.io (28 voci npm/PyPI / 378 versioni; 6 pacchetti Cargo documentati sotto _cargo_packages, non abbinati fino all'arrivo del supporto Cargo) | Socket, 2026-05-24 |
tools/osvcatalog converte uno snapshot locale di OSV in un catalogo offline. Bumblebee non interroga mai osv.dev durante la scansione. Vengono emessi solo i record di pacchetti dannosi (ID MAL-, o record alias di uno), con severity: "critical".
Sono supportate due forme di input. Scegli una in base alla copertura.
Repository OSSF malicious-packages (consigliato, tutti gli ecosistemi in un unico albero):
git clone --filter=blob:none --sparse --depth=1 \
https://github.com/ossf/malicious-packages.git mp
git -C mp sparse-checkout set osv/malicious
go run ./tools/osvcatalog \
-source "https://github.com/ossf/malicious-packages@$(git -C mp rev-parse HEAD)" \
-o threat_intel/osv-malicious.json mp/osv/malicious/
Dump OSV per ecosistema (ecosistema singolo, archivio zip):
curl -fsSLO https://osv-vulnerabilities.storage.googleapis.com/npm/all.zip
go run ./tools/osvcatalog -o threat_intel/osv-npm-malicious.json npm/all.zip
Ogni percorso di input può essere un albero di directory, un archivio OSV all.zip o un singolo record .json. Gli ecosistemi OSV supportati mappano su Bumblebee come: npm, PyPI → pypi, Go → go, RubyGems → rubygems, Packagist → packagist, VSCode → editor-extension. I record i cui intervalli dichiarano tutte le versioni affette (un singolo evento introduced: "0") vengono emessi con "versions": ["*"]; i record con solo intervalli delimitati e nessun affected[].versions enumerato vengono saltati. L'output è deterministico, viene validato rispetto allo schema e dovrebbe essere verificato prima dell'uso. Il _comment generato registra l'ambito, i conteggi per ecosistema, la suddivisione dei motivi di salto e l'etichetta di provenienza opzionale -source.