Possiamo paragonare l’attacco brute force (in italiano a forza bruta) a una sorta di anagramma. Solo che il suo obiettivo non è la formazione di nuove parole, ma individuare la password che permette di accedere a un determinato sistema informatico, provando tutte le combinazioni possibili. Fino a che non si trova quella giusta.
In genere, è usato dai cracker per sgraffignare informazioni sensibili o diffondere malware. Un metodo che viene considerato a mo’ di ultima spiaggia, quando non rimane altro da tentare, perché è per natura poco efficiente: può richiedere un elevatissimo numero di tentativi e un lungo tempo d’esecuzione.
Indice degli argomenti
Che cos’è il metodo di attacco brute force
In ambito crittanalitico, gli attacchi a forza bruta si usano per trovare la chiave di un sistema che sfrutta un algoritmo, cioè una procedura che segue passaggi ben precisi, per eseguire operazioni di cifratura e decifratura. Un esempio famoso è Enigma, la macchina impiegata dalle forze armate tedesche durante il periodo nazista e la seconda guerra mondiale, per codificare e decodificare i propri messaggi: soltanto chi era in possesso di un’altra macchina Enigma e di una serie apposita di codici poteva leggerli.
Nel 1939 i servizi segreti polacchi erano riusciti a decifrare alcune versioni semplificate di Enigma. Ma i lavori si trasferirono nel Regno Unito dopo l’inizio della guerra, quando i codici divennero troppo complessi per le risorse a disposizione dei polacchi. Tra gli scienziati al lavoro sul progetto c’era anche il noto matematico Alan Turing che ideò una macchina più efficace per decifrare i codici. Un sistema che ha contribuito in modo significativo ad aiutare i soldati alleati. Tutto proprio attraverso un attacco a forza bruta.
Quando si parla di sicurezza informatica, invece, il metodo viene utilizzato soprattutto per trovare la password che consente l’accesso a un sistema. Quest’ultima, a differenza della chiave crittografica che solitamente è generata in modo casuale, è spesso ideata da un essere umano, quindi è meno complessa.
Cosa fa un attacco brute force
Un attacco brute force può essere sfruttato per recuperare qualunque tipo di password. Da quella che usiamo per Gmail a quella di Facebook, passando per la chiave che ci permette di accedere ai nostri servizi finanziari, a server FTP e SSH. In pratica, consiste nel provare tutte le possibili combinazioni di lettere, caratteri speciali e numeri finché non individua la mescolanza giusta. Un’operazione che viene, ovviamente, eseguita da un software.
Il tempo di riuscita dell’impresa dipende dalla velocità di calcolo del computer, nonché dalla complessità e la lunghezza della password (quanti e quali caratteri sono stati utilizzati).
Attacco a dizionario, la variante (tipologia) del brute force
Una variante dell’attacco a forza bruta è l’attacco “a dizionario” che consente di provare a decifrare un codice o una password, vagliando un numero finito di stringhe di solito già generate, come ad esempio parole comuni. Un dizionario, appunto, che viene fornito al software. Così i tempi di ricerca si riducono.
Non è detto che il sistema si riveli efficace, anche se spesso ha buone probabilità di successo perché la maggior parte delle persone tende a usare password semplici da ricordare (il nome proprio, quello di persone care, o date di nascita), scegliendo parole prese dalla propria lingua nativa. Esistono diversi strumenti per creare dizionari efficaci per attacchi brute force, come Crunch, disponibile in diverse distribuzioni Linux.
I principali software per fare attacchi brute force
Hydra è lo strumento per eccellenza quando si tratta di effettuare attacchi brute force, soprattutto se nel mirino c’è un servizio d’autenticazione remota. È molto potente e supporta oltre cinquanta protocolli, tra cui telnet, ftp, http, https, e smb.
Hashcat si definisce come il software per il recupero password “più veloce al mondo”. Ha avuto un codice proprietario fino al 2015, ma ora è rilasciato come “free software”. Sono disponibili versioni per Linux, OS X, e Windows. La sua particolarità sta nel fatto che per gli attacchi consente di poter sfruttare la potenza di calcolo dei processori grafici (GPU), oltre che della più classica CPU.
JTR è un software open source che permette di effettuare attacchi di tipo dizionario o brute force. Inoltre rileva automaticamente dall’hash, il tipo di cifratura usato. È disponibile per ogni sistema operativo, Windows, Linux e Mac Os, e si può scaricare gratuitamente dal sito OpenWall. Anche se esite una versione pro a pagamento.
Esempi dei più famosi attacchi brute force
Il più grande attacco brute force della storia recente ha preso di mira GitHub, la piattaforma “social” utilizzata dagli sviluppatori per condividere i loro progetti software. Tutto è accaduto nel 2013, quando i cyber criminali hanno usato una lista di nomi utenti e password – che avevano recuperato attraverso un attacco precedente – e puntato a carpire le credenziali GitHub di migliaia di utenti. GitHub ha avvisato i proprietari degli account compromessi, anche se non ha mai rivelato pubblicamente il numero delle persone coinvolte.
21 milioni di account. Sono stati quelli compromessi a causa di un attacco brute force che ha preso di mira gli utilizzatori di TaoBao, piattaforma di e-commerce del colosso cinese Alibaba. Un episodio che si è verificato tra ottobre e novembre 2015. Anche in questo caso è stato usato un database di nomi e password sgraffignato altrove, l’attacco si è rivelato efficace in un caso su cinque. Una dimostrazione del fatto che gli utenti tendono a usare sempre le stesse, cattive, password.
A rilevare l’attacco è stata Cloudfare, il popolare provider che fornisce supporto contro gli attacchi DDoS. L’obiettivo era la piattaforma per l’auto-pubblicazione WordPress che il 13 aprile 2013, in appena un’ora, è stata presa di mira da 60 milioni di richieste brute force. Per fortuna sono stati pochi i siti compromessi nel processo.
Come difendersi dagli attacchi brute force
La miglior protezione è una buona password, che dobbiamo imparare a considerare importante al pari delle chiavi di casa. La maggior parte delle persone, invece, ne sottovaluta la rilevanza e per comodità sceglie combinazioni facili. Basti pensare che nel 2016 la password più utilizzata è stata “123456”, mentre il secondo posto è andato alla parola “password”, e il terzo al codice “12345678”. Un altro errore fatto molto spesso è quello di usare la stessa parola ripetuta al contrario. Una leggerezza che il cybercrime conosce molto bene: infatti, in Rete esistono decine di programmi gratuiti che sfruttano gli schemi comuni, permettendo di decifrare password poco complesse.
La differenza tra attaccare una chiave crittografica e una password è che la seconda viene generata dagli umani ed è normalmente molto più semplice, in termine di tentativi, da decriptare.
Una buona pratica per mettere a punto una password sicura è ideare parole chiave che utilizzino una combinazione di lettere maiuscole, minuscole, numeri e caratteri speciali. La si può ottenere, senza per forza rinunciare alla memorabilità. Un esempio sono gli acronimi di una frase semplice e rappresentativa come:
Io mi chiamo Alessio e ho 1 sorella
che diventa:
ImcAeh1S
Un’altra soluzione è l’utilizzo di un generatore di password. Online se ne trovano molti gratuiti e affidabili come PC Tools Secure Password Generator, Strong Password Generator, e Password Savy.