Che cos'è un attacco di forza bruta?
Un attacco di forza bruta è una tecnica in cui l'aggressore cerca di indovinare una password o una chiave di cifratura provando in modo sistematico tutte le combinazioni possibili — o le più probabili — finché non trova quella giusta. Non c'è un "hacking geniale": è un tentativo di massa, automatizzato da software specializzati.
Con i computer moderni e le batterie di GPU, un aggressore può provare miliardi di combinazioni al secondo. Elenchi di password con scelte comuni (come "password", "123456", "qwerty" e "iloveyou") rendono il processo ancora più veloce. Le password corte e semplici cadono in pochi minuti o meno. La buona notizia: password lunghe, casuali e uniche sono praticamente impossibili da violare con la forza bruta in tempi ragionevoli.
La matematica della forza bruta è semplice: una password di sole lettere minuscole (26 caratteri) e di 6 caratteri ha 308 milioni di combinazioni possibili. Aggiungendo maiuscole, numeri e simboli (95 caratteri in totale), una password di 12 caratteri ha oltre 540 triliardi di combinazioni: la forza bruta diventa irrealizzabile anche con l'hardware più potente disponibile oggi.
Come funziona nella pratica
Esistono diverse varianti degli attacchi di forza bruta, ognuna con strategie ed efficacia diverse:
Prova tutte le combinazioni possibili di caratteri (a-z, A-Z, 0-9, simboli). Per una password di 8 caratteri, possono essere bilioni di tentativi. La maggior parte dei siti e dei sistemi limita i tentativi di accesso o blocca dopo i fallimenti, rendendo la forza bruta pura meno efficace negli attacchi online. Resta però molto efficace contro i database di hash offline.
Usa elenchi di password comuni (dizionari) come "password123", "admin", "iloveyou" e milioni di altre. È molto più veloce della forza bruta pura perché la maggior parte delle persone usa password prevedibili. Gli attacchi a dizionario avanzati provano anche varianti: sostituire 'a' con '@', 'e' con '3', aggiungere numeri alla fine e altri schemi di sostituzione comuni.
Usa credenziali trapelate da una violazione per tentare l'accesso ad altri servizi. Poiché molte persone riutilizzano le password, una combinazione email + password di una fuga può funzionare su decine di altri siti. Strumenti automatizzati possono provare milioni di coppie di credenziali rubate su centinaia di servizi contemporaneamente.
Usa tabelle precalcolate che associano i valori hash alle password originali. Invece di calcolare ogni hash durante l'attacco, l'aggressore cerca l'hash nella tabella, riducendo drasticamente i tempi. L'archiviazione moderna delle password usa il "salting" (aggiunta di dati casuali prima dell'hash) per vanificare le rainbow table.
Perché le password deboli sono pericolose
Password come "123456", "password", "qwerty" o "nome+anno" compaiono in ogni elenco delle password più usate. Gli strumenti di violazione le provano per prime e le scoprono in pochi secondi. Ecco i tempi stimati in uno scenario di attacco automatizzato:
123456
Violata in meno di 1 secondo
Password1!
Da minuti a ore
Xk9#mP2$vL7@qR4
Da secoli a millenni
Come proteggerti
La protezione dalla forza bruta si basa su password robuste e su livelli di sicurezza aggiuntivi:
- Usa password lunghe e uniche: Ogni account dovrebbe avere una password diversa. Un gestore di password aiuta a crearle e conservarle in modo sicuro.
- Attiva l'autenticazione a due fattori (2FA): Anche se scoprono la password, avranno bisogno del secondo fattore (app di autenticazione, SMS o chiave fisica) per accedere.
- Evita password ovvie: Niente date di nascita, cognomi, nomi di animali o sequenze come "abc123" o "qwerty".
- Controlla le violazioni: Usa strumenti come Have I Been Pwned per scoprire se la tua email o la tua password è comparsa in fughe di dati.
- Non riutilizzare mai le password: Se un sito fa trapelare le tue credenziali, i criminali le proveranno altrove. Una password unica per ogni servizio limita il raggio dei danni.
- Valuta una passphrase: Quattro o più parole casuali messe in fila ("correct-horse-battery-staple") sono più facili da ricordare e più difficili da violare delle password corte e complesse.