123% di CVE segnalate in più al giorno nel 2026 rispetto all'anno scorso.

Supply chain

Che cos'è lo slopsquatting?

Lo slopsquatting è un attacco che registra nomi di pacchetti inventati dagli assistenti di programmazione IA. Quando un modello suggerisce un pacchetto che non esiste, un attaccante può pubblicare malware con quel nome, e il successivo sviluppatore o agente che segue il suggerimento lo installa. È typosquatting senza l'errore di battitura.

Aggiornato il

Da dove viene il nome

Il termine è un gioco di parole su typosquatting, dove "slop" indica l'output IA di bassa qualità. È attribuito a Seth Larson, security developer-in-residence della Python Software Foundation, nel 2025.

Come nasce l'allucinazione dei pacchetti

Un modello linguistico scrive ciò che sembra probabile. Un nome plausibile, come quello di una libreria per un'attività comune, può sembrare probabile quanto uno reale, quindi il modello a volte scrive un import o un comando di installazione per un pacchetto che nessuno ha mai pubblicato.

Uno studio presentato a USENIX Security 2025 ha testato 16 modelli diffusi su 576.000 campioni di codice. La quota di pacchetti frutto di allucinazione era almeno del 5,2% per i modelli commerciali e del 21,7% per i modelli open source, con 205.474 nomi inventati univoci. I ricercatori hanno descritto il problema come persistente e sistemico.

Come funziona un attacco di slopsquatting

  1. Raccolta dei nomi. L'attaccante pone ai modelli domande di programmazione comuni e annota quali pacchetti non esistono.
  2. Pubblicazione. Registra quei nomi su npm o PyPI, con un pacchetto funzionante che nasconde un payload.
  3. Attesa. Uno sviluppatore incolla il suggerimento, oppure un coding agent esegue l'installazione da solo.
  4. Esecuzione. Uno script di installazione viene eseguito sulla macchina dello sviluppatore o in CI, con accesso a token e secret.

Slopsquatting e typosquatting

Typosquatting Slopsquatting
Origine dell'errore Una persona digita male un nome Un modello inventa un nome
Il nome Simile a quello di un pacchetto reale Plausibile, senza alcun pacchetto reale dietro
Chi lo installa Uno sviluppatore Uno sviluppatore, o un agente senza che una persona legga il nome
Perché il rilevamento è più difficile I controlli sulle somiglianze possono confrontarlo con i nomi più diffusi Può non esistere alcun nome diffuso con cui confrontarlo

Perché i coding agent alzano la posta in gioco

Con un assistente in chat, una persona legge il suggerimento prima di eseguirlo. Un coding agent può scrivere il codice, aggiungere la dipendenza ed eseguire l'installazione in un solo passaggio. Il controllo umano che intercetta molti nomi sbagliati scompare, e l'installazione avviene ovunque giri l'agente, spesso con le credenziali dello sviluppatore o all'interno della CI. Per il quadro più ampio, veda la sicurezza per lo sviluppo assistito dall'IA.

Come proteggersi dallo slopsquatting

  • Verifichi prima di installare. Controlli che un pacchetto suggerito esista, abbia un vero repository e una storia. Un pacchetto creato la settimana scorsa merita sospetto.
  • Riveda le modifiche al lockfile. Le nuove dipendenze devono essere visibili nelle pull request, chiunque o qualunque cosa abbia scritto il codice. Veda che cosa registra un lockfile.
  • Limiti ciò che gli agenti possono fare. Richieda un'approvazione prima che un agente installi pacchetti. Esegua gli agenti in una sandbox senza credenziali di produzione.
  • Rimandi l'adozione dei nuovi pacchetti. È utile una regola che escluda i pacchetti pubblicati negli ultimi giorni.
  • Disattivi gli script di installazione dove la Sua build lo consente.
  • Limiti il traffico in uscita dalle build. Un pacchetto che non può raggiungere l'attaccante non può inviare i Suoi secret da nessuna parte. Veda policy di egress per GitHub Actions.

Un nuovo pacchetto di slopsquatting non ha alcun advisory, quindi una scansione SCA o npm audit non lo riporterà. Per l'elenco completo dei controlli, veda le best practice per la sicurezza della software supply chain.

Come CRACI limita i danni

CRACI non rileva nuovi pacchetti malevoli, quindi per valutarli usi altri strumenti. Ciò che fa è limitare i danni quando uno di essi raggiunge la Sua build. Come Suo runner GitHub Actions, applica una policy di egress che blocca le connessioni di cui la build non ha bisogno, il che La protegge anche quando nessuno ha mai visto quell'attacco. Registra inoltre ogni pacchetto scaricato da ciascun job, quindi, una volta noto un pacchetto dannoso, può vedere quali build lo hanno introdotto.

Slopsquatting: domande frequenti

Che cos'è lo slopsquatting?

Un attacco in cui qualcuno registra nomi di pacchetti inventati dagli assistenti di programmazione IA, così che chiunque segua il suggerimento installi il codice dell'attaccante.

Chi ha coniato il termine slopsquatting?

È attribuito a Seth Larson, security developer-in-residence della Python Software Foundation, nel 2025.

Che cos'è un pacchetto frutto di allucinazione?

Il nome di un pacchetto che un modello IA suggerisce anche se quel pacchetto non esiste. Le ricerche lo hanno riscontrato in una quota significativa dei campioni di codice generati.

In che cosa lo slopsquatting è diverso dal typosquatting?

Il typosquatting si basa su una persona che digita male il nome di un pacchetto reale. Lo slopsquatting si basa su un modello che inventa un nome mai esistito, quindi non c'è alcun pacchetto reale con cui confrontarlo.

Come si previene lo slopsquatting?

Verifichi che i pacchetti suggeriti siano reali, riveda le nuove dipendenze nelle pull request, richieda un'approvazione prima che gli agenti installino qualcosa e limiti il traffico in uscita dalle build.

Contenga il pacchetto che nessuno voleva installare

Blocchi le connessioni in uscita di cui le Sue build non hanno bisogno e conservi un registro di ogni pacchetto scaricato.

Prenota una demo