Il Brute force attack, o attacco di forza bruta  è un metodo attraverso cui gli hacker tentano di decifrare la password dei sistemi informatici.

Lo scopo, dunque, è il credential cracking, ovvero l’acquisizione indebita dei dati d’accesso.

A tal fine possono essere impiegati essenzialmente due metodi:

  • il primo, più sofisticato, che procede con l’accostamento di caratteri casuali in tutte le loro possibili combinazioni
  • mentre il secondo, consistente nel riciclaggio delle credenziali, prevede l’utilizzo librerie di password, frutto di data breach precedenti e rivendute sul dark web.

Nello specifico, nel primo caso di parla propriamente di attacco di forza bruta, mentre nel secondo di una sua sottocategoria: l’attacco a dizionario. In questo articolo entreremo nel merito della questione, tentando di fornire un quadro esaustivo di uno degli attacchi informatici più diffusi al mondo.

brute force attacco
  1. Cos’è il metodo Brute Force
  2. Come funziona un attacco Brute force
  3. Obiettivi di un Brute Force Attack
  4. Tipologie di attacco a forza bruta
  5. Come impostare una password sicura
  6. La tutela delle password tramite l’hashing
  7. Best practice per prevenire un attacco Brute force

Cos’è il metodo Brute Force

L’attacco di forza bruta, nonostante sia una una tecnica ormai datata, è ancora ampiamente utilizzato per il credential cracking e l’accesso a informazioni personali contenute negli account utente.

Il punto di forza sta nella sua efficacia, rimasta immutata a dispetto delle tecnologie sempre più sofisticate. Questo spiega anche l’investimento notevole di tempo e risorse nel perpetrarlo: spesso l’operazione può richiedere svariate settimane, se non mesi.

Certamente non si tratta di operazioni compiute manualmente: gli hacker, infatti, si dotano di specifici programmi brute force per la ricerca delle password. Inoltre, il processo può venire semplificato, come già accennato,

  • attraverso l’utilizzo di password messe online dagli stessi hacker, e quindi già rubate,
  • o con l’impiego delle password più sfruttate e diffuse

per poi giungere, attraverso vari tentativi, alla chiave di sicurezza corretta.

Come funziona

Gli hacker black hat, come già anticipato, sfruttano programmi automatizzati che permettono loro di trovare abbinamenti di password e rispettivi nomi utente.

Tra i software più utilizzati allo scopo troviamo:

  • Hashcat, considerato il più veloce per effettuare attacchi brute force, combina la potenza di calcolo di una CPU con quella dei processori grafici GPU;
  • JTR, utilizzato principalmente per i dictionary attack (gli attacchi a dizionario), offre sia una versione open source  che una a pagamento;
  • Hydra che, forte di una libreria di oltre cinquanta protocolli (tra cui http, https, telnet, ecc), si dimostra lo strumento più gettonato, soprattutto nell’attaccare sistemi di autenticazione ad accesso remoto.

cui si aggiungono, tra gli altri: Aircrack-ng, John the Ripper, L0phtCrack, nonché strumenti di scansione delle vulnerabilità di sistema.

Obiettivi di un attacco Brute Force

Il brute force attack, come qualsiasi altra tipologia di attacco informatico, non rappresenta il fine, ma lo strumento attraverso cui perpetrare:

Oltre a questi “obiettivi standard”, l’attacco forza bruta può inoltre essere impiegato per:

  • inoltrare messaggi di phishing
  • danneggiare la reputazione della vittima
  • ridirezionare il traffico di navigazione dell’utente verso server controllati dagli stessi criminali che hanno perpetrato l’attacco.

Tipologie di Brute force attack

Ad oggi, l’attacco Brute force ha subito notevoli sofisticazioni volte soprattutto ad aumentarne

  • la velocità di esecuzione
  • l’efficacia.

Tra le modalità di attacco più conosciute si distinguono:

  • il dictionary attack (attacco a dizionario), tecnica più diffusa e sfruttata. In questo caso i cracker si dotano di nutriti archivi delle password più utilizzate o di password rubate e diffuse nel dark web.
  • il credential stuffing, il cui punto di forza si basa sulla pessima abitudine degli utenti di utilizzare le stesse credenziali per piattaforme diverse.
  • attacchi brute force ibridi: in cui si combinano le modalità dell’attacco a dizionario con informazioni note sull’utente (come date di nascita, ecc.)
  • attacchi brute force inversi: in cui a una lista di password note viene associata una lista di nomi utente, finché non viene trovata la combinazione corretta.

Per tali motivi, e per evitare di trovarsi nel mirino di questi attacchi, è necessario

  • sia possedere più di una password
  • che crearle con specifici criteri

in modo da renderle quanto più inviolabili possibile.

example procedure brute force

Come proteggersi: l’utilizzo cosciente della password

Alcuni studi effettuati da programmatori di SplashData hanno dimostrato che le password più diffuse a livello mondiale sono:

  • 12345
  • 123456
  • 12345678
  • 123456789
  • Password

Queste sono quindi le password più utilizzate e conosciute, dunque le più facilmente attaccabili e violabili.

L’unico modo per difendersi da questi attacchi, infatti è munirsi di una chiave di accesso che rispecchi i seguenti criteri:

  •  con caratteri maiuscoli e minuscoli tra loro mescolati,
  • con almeno un carattere speciale.

Oltre a ciò, è fondamentale utilizzare password diverse per i vari account che si possiedono, per diminuire la probabilità di subire un attacco credential stuffing.

Qualora le credenziali da tenere a mente fossero troppe, si potrebbe facilmente ricorrere a un software di gestione delle password. Da quelli che offrono una gestione tramite impronta digitale, ai programmi con sincronizzazione automatica degli account, basterà solamente scegliere quale sia più adatto alle esigenze del proprio business.

La tutela delle password tramite l’hashing

Ma perché i pirati informatici necessitano di crackare le password con il metodo brute force?

Per proteggere le password, gli ethical hacker  hanno appositamente implementato quello che si potrebbe definire una sorta di  “scudo cibernetico” contro furto di credenziali: l’hashing.

L’hashing è la conversione delle password in sequenze alfanumeriche criptate e irreversibili, ossia impossibili da riconvertire nell’originale. Ciò è reso possibile grazie all’utilizzo di appositi algoritmi crittografici unidirezionali che riducono il set di dati della password originaria in un codice di lunghezza preimpostata, in cui parte delle informazioni originali sono andate perdute.

Nella pratica, ciò ha permesso ai siti web di abbandonare il salvataggio in chiaro delle password: così, quando un hacker black hat tenterà di accedere al database, se queste sono state preventivamente criptate in hash, gli sarà notevolmente più difficile, se non addirittura impossibile, risalire agli originali e violarne gli account.

Per rafforzare la sicurezza del codice di hash spesso vengono aggiunte sequenze di caratteri alle password vera e propria, cosicché la combinazione ultima (digest) renda l’attacco ulteriormente complicato e più difficilmente realizzabile.

Queste sequenze vengono distinte in:

  • salt, sequenza casuale di bit che viene conservata in output
  • pepper, che invece viene aggiunto, ma non riprodotto in output.

Best practice per prevenire un attacco Brute Force

Dunque, dopo aver constatato quanto un attacco di forza bruta possa essere redditizio per un hacker,  sarà opportuno adottare alcune accortezze preventive, in grado di rallentare, se non evitare, un possibile attacco di questo tipo.

Queste consistono in:

  • utilizzare, come detto in precedenza, una password intricata, costituita dall’associazione dei caratteri minuscolo, maiuscolo e speciale: più sarà complicata, più la sua protezione dal brute force sarà garantita
  • non va esclusa la buona abitudine di cambiare periodicamente le password
  • smettere di impiegare la stessa password per più account
  • prevedere un numero massimo di tentativi d’accesso che, se superato, comporti un blocco temporaneo dell’account: ciò spingerà l’aggressore a desistere dal tentativo di attacco. La buona notizia è che, nella maggioranza dei casi, il blocco viene gestito di default dal software.
  • Impiegare la 2FA, ovvero l’autentificazione a due fattori (Two Factor Authentication). Questa consiste nell’inserimento di un ulteriore fattore di autenticazione, tale da assicurare l’identità di chi sta effettuando l’accesso. Alcuni esempi sono offerti: dalla richiesta di inserimento di un codice monouso (OTP),o dall’autorizzazione su app tramite messaggio push.

In conclusione, date le implicazioni che comporta il cadere vittima di un attacco brute force, è fondamentale applicare tutte le semplici misure di rafforzamento della sicurezza poc’anzi menzionate, al fine di tutelare la propria privacy online e quella della propria azienda.

D’altro canto, se si ha necessità di salvaguardare il database aziendale su cui sono conservate le credenziali dei propri clienti, sarà opportuno rivolgersi a consulenti esperti in cybersecurity. che sapranno mettere a punto le strategie di difesa più adatte.