Il credential stuffing è un attacco in cui l’attaccante usa coppie di credenziali (username + password) ottenute da data breach precedenti per tentare in modo automatizzato l’accesso a servizi diversi. Il presupposto è il riuso delle password: una quota significativa degli utenti usa le stesse credenziali su più servizi. Quando un servizio viene compromesso e le sue credenziali trapelano, quelle stesse coppie vengono usate contro banche, servizi email, e-commerce, e qualsiasi altro servizio di interesse.
Differenza con Brute Force e Password Spraying
| Tecnica | Come genera le credenziali | Caratteristica |
|---|---|---|
| Brute force | Genera combinazioni sistematicamente | Alta velocità, basso tasso di successo, molti tentativi per singolo account |
| Password spraying | Una password comune contro molti account | Evita il blocco per tentativi su singolo account |
| Credential stuffing | Coppie reali da data breach | Basso numero di tentativi per account, alto tasso di successo |
Il credential stuffing ha tassi di successo tipici tra 0, 1% e 2% — basso in percentuale, ma devastante su liste di milioni di credenziali.
Il mercato delle credenziali rubate
I data breach producono database di credenziali che circolano in forum underground e mercati del dark web. Esistono aggregatori pubblici come Have I Been Pwned con miliardi di credenziali da breach noti. Strumenti automatizzati come Sentry MBA, OpenBullet e Snipr sono specificamente progettati per eseguire credential stuffing su larga scala, con supporto per proxy rotation, CAPTCHA solving e configurazioni per siti specifici.
Tecniche di evasione dei controlli
Gli attaccanti investono per aggirare le difese più comuni:
IP rotation: usare reti di proxy residenziali (IP di veri dispositivi consumer, non datacenter) rende il blocco IP inefficace — ogni richiesta arriva da un IP diverso e legittimo.
User-Agent rotation: variare lo User-Agent per simulare diversi browser e dispositivi.
Distribuzione temporale: rallentare i tentativi per restare sotto le soglie di rate limiting.
CAPTCHA solving: servizi automatizzati e farm umane risolvono CAPTCHA a basso costo.
Cookie e TLS fingerprint rotation: i sistemi di bot detection avanzati analizzano la fingerprint TLS e il comportamento del browser — gli attaccanti usano browser headless (Puppeteer, Playwright) o framework appositi.
Impatti
- Account takeover: l’attaccante prende il controllo dell’account della vittima — accede ai dati personali, effettua acquisti, svuota wallet o loyalty points.
- Frode finanziaria: conti bancari o carte di pagamento salvate vengono sfruttati.
- Vendita di account: gli account compromessi (streaming, gaming, email) vengono rivenduti.
- Pivoting: l’accesso a un account email permette il reset di password di altri servizi.
Contromisure
Autenticazione multi-fattore (MFA): è la difesa più efficace. Anche con credenziali corrette, l’attaccante non può completare il login senza il secondo fattore. Phishing-resistant MFA (FIDO2/WebAuthn) è ancora più robusta contro attacchi sofisticati.
Verifica delle credenziali contro database di breach: al login o alla registrazione, verificare se la password dell’utente è presente in database di credenziali compromesse (API di Have I Been Pwned, k-anonymity model). Se presente, forzare il cambio password.
Rate limiting e account lockout calibrati: limitare i tentativi di login per account, IP e device fingerprint — con cautela sul lockout (può essere usato per DoS di account).
Bot detection comportamentale: analizzare il comportamento della sessione (velocità di digitazione, movimenti del mouse, timing tra richieste) per distinguere bot da umani — sistemi come Cloudflare Bot Management, Akamai Bot Manager.
Password hashing robusto: se le proprie credenziali vengono rubate, un hash forte (bcrypt, Argon2, scrypt) rallenta l’offline cracking, riducendo il numero di credenziali in chiaro disponibili per futuri attacchi.
Notifiche di accesso: avvisare gli utenti di accessi da nuovi dispositivi o posizioni geografiche insolite — permette di rilevare l’account takeover rapidamente.
Relazione con altri argomenti
- Autenticazione Multi-Fattore — la difesa principale.
- Password Hashing — protegge le credenziali in caso di breach del proprio servizio.
- FIDO2 e WebAuthn — autenticazione phishing-resistant che elimina le password riusabili.
- Incident Response — protocollo da seguire quando un attacco di credential stuffing viene rilevato.
- OWASP Top 10 — A07 Identification and Authentication Failures.