Come provare a decifrare una password da soli per testarne la sicurezza

L'articolo ha testato 3 password diverse con uno strumento open source per decifrare le password, per scoprire quale metodo funziona davvero in termini di sicurezza delle password.

Sommario

Che cosa si intende per password cracking?

Come provare a decifrare una password da soli per testarne la sicurezza

Quando crei un account presso un servizio online, il provider solitamente crittografa le tue informazioni di accesso sui propri server. Questo viene fatto utilizzando un algoritmo per creare un "hash", una stringa casuale apparentemente unica di lettere e numeri per la tua password. Naturalmente, non si tratta di un evento del tutto casuale, bensì di una stringa di caratteri molto specifica che solo la tua password può generare, ma a un occhio inesperto sembra un pasticcio.

Trasformare una parola in un hash è molto più rapido e semplice che "decodificare" nuovamente l'hash in una parola. Quindi, quando imposti una password, il servizio a cui stai effettuando l'accesso esegue la scansione della tua password tramite un hash e memorizza il risultato sui propri server.

Se questo file di password dovesse trapelare, gli hacker cercheranno di scoprirne il contenuto decifrando la password. Poiché crittografare le password è più veloce che decrittografarle, gli hacker installeranno un sistema che accetta le potenziali password come input, le crittografa utilizzando lo stesso metodo del server e quindi confronta i risultati con un database di password.

Se l'hash di una potenziale password corrisponde a una qualsiasi voce nel database, l'hacker sa che ogni tentativo corrisponde alla potenziale password provata.

Come decifrare le proprie password usando HashCat

Prova a decifrare alcune delle password generate dall'articolo per vedere quanto è facile. Per fare ciò, nell'esempio verrà utilizzato Hashcat , uno strumento gratuito e open source per decifrare le password che chiunque può utilizzare.

Per questi test, l'esempio craccherà le seguenti password:

  • 123456 : una password classica e un incubo per la sicurezza informatica, 123456 è la password più comunemente utilizzata al mondo . NordPass ha calcolato che 3 milioni di account utilizzavano 123456 come password, di cui 1,2 milioni proteggevano account aziendali.
  • Susan48! : Una password che segue schemi che la maggior parte degli utenti utilizzerebbe per creare password sicure. In genere soddisfa i criteri di una protezione di base tramite password, ma, come vedremo più avanti, presenta alcune importanti debolezze che possono essere sfruttate.
  • t9^kJ$2q9a : una password generata utilizzando lo strumento Bitwarden. È impostato per generare una password lunga 10 caratteri con lettere maiuscole e minuscole, simboli e numeri.

Ora, crittografa la password utilizzando MD5. Ecco come apparirebbero le password se fossero salvate in un file di password:

  • 123456 : e10adc3949ba59abbe56e057f20f883e
  • Susan48! : df1ce7227606805745ee6cbc644ecbe4
  • t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625

Adesso è il momento di scoprirli.

Eseguire un semplice jailbreak utilizzando il metodo di attacco del dizionario

Come provare a decifrare una password da soli per testarne la sicurezza

Per iniziare, eseguiamo un attacco tramite dizionario, uno dei metodi di attacco alle password più comuni. Si tratta di un attacco semplice in cui l'hacker prende un elenco di potenziali password, chiede a Hashcat di convertirle in MD5 e verifica se qualcuna delle password corrisponde alle 3 voci sopra. Per questo test, utilizziamo come dizionario il file "rockyou.txt", che rappresenta una delle più grandi fughe di password della storia.

Per iniziare a decifrare, l'autore dell'articolo è andato nella cartella Hashcat, ha fatto clic con il pulsante destro del mouse su uno spazio vuoto e ha cliccato su Apri nel terminale . Ora che il Terminale è aperto e impostato sulla directory Hashcat, richiama l'applicazione Hashcat con il seguente comando:

.\hashcat -m 0 -a 0 passwordfile.txt rockyou.txt -o results.txt

Ecco cosa fa il comando:

  • .\hashcat chiama Hashcat.
  • -m 0 : specifica il tipo di codifica da utilizzare. In questo caso verrà utilizzato MD5, elencato come 0 nella documentazione di aiuto di Hashcat.
  • -a 0 : Specifica l'attacco da eseguire. Nella documentazione di aiuto di Hashcat l'attacco al dizionario è elencato come zero, quindi qui lo chiamiamo così.
  • passwordfile.txt rockyou.txt : Il primo file contiene le 3 password crittografate che abbiamo impostato in precedenza. Il secondo file è l'intero database delle password rockyou.
  • -o results.txt : questa variabile determina dove posizionare i risultati. Nel comando, le password violate vengono inserite in un file TXT denominato "results".

Nonostante Rockyou fosse un fenomeno enorme, Hashcat è riuscito a elaborarli tutti in 6 secondi. Nel file risultante, Hashcat afferma di aver decifrato la password 123456, ma le password Susan e Bitwarden restano intatte. Questo perché la password 123456 è stata utilizzata da qualcun altro nel file rockyou.txt, ma nessun altro ha utilizzato la password Susan o Bitwarden, il che significa che erano sufficientemente sicure da sopravvivere a questo attacco.

Eseguire un jailbreak più complesso utilizzando attacchi Brute Force nascosti

Come provare a decifrare una password da soli per testarne la sicurezza
Eseguire un attacco Brute Force con Hashcat

Gli attacchi tramite dizionario sono efficaci quando qualcuno utilizza la stessa password di una password presente in un lungo elenco di password. Sono rapidi e semplici da implementare, ma non riescono a decifrare le password che non sono presenti nel dizionario. Pertanto, se si vuole davvero testare la propria password, è necessario ricorrere agli attacchi Brute Force.

Se gli attacchi tramite dizionario si limitano a prendere un elenco preimpostato e a convertire i singoli elementi uno per uno, gli attacchi tramite forza bruta fanno lo stesso, ma con ogni combinazione immaginabile. Sono più difficili da implementare e richiedono più tempo, ma alla fine saranno in grado di decifrare qualsiasi password. Come vedremo tra poco, questa capacità può talvolta richiedere molto tempo.

Ecco il comando utilizzato per eseguire un "vero" attacco Brute Force:

.\hashcat -m 0 -a 3 target.txt --increment ?a?a?a?a?a?a?a?a?a?a -o output.txt

Ecco cosa fa il comando:

  • -a 3 : Questa variabile definisce l'attacco che vogliamo eseguire. La documentazione di aiuto di Hashcat elenca gli attacchi Brute Force al numero 3, perciò viene chiamato così.
  • target.txt : file contenente la password crittografata che vogliamo decifrare.
  • --increment : questo comando dice ad Hashcat di provare tutte le password lunghe un carattere, poi due, poi tre, ecc. finché non trova una corrispondenza.
  • ?a?a?a?a?a?a?a?a?a?a?a : Questa è chiamata "maschera". Le maschere ci consentono di dire ad Hashcat quali caratteri vengono utilizzati e in quali posizioni. Ogni punto interrogativo specifica una posizione del carattere nella password e la lettera specifica cosa proviamo in ogni posizione. La lettera "a" rappresenta lettere maiuscole e minuscole, numeri e simboli, quindi questa maschera dice "Prova tutto in ogni posizione". Questa è una maschera terribile, ma più avanti vedremo come usarla al meglio.
  • -o output.txt : questa variabile determina dove posizionare i risultati. Il comando di esempio inserisce le password violate in un file TXT denominato "output".

Anche con questa pessima maschera, la password 123456 viene decifrata in 15 secondi. Sebbene sia la password più comune, è una delle più deboli.

Parola d'ordine "Susan48!" Molto meglio: il computer dice che ci vorranno 4 giorni per decifrarlo. Tuttavia c'è un problema. Ricordate quando nell'articolo si diceva che la password di Susan aveva delle falle gravi? L'errore più grande è che le password sono costruite in modo prevedibile.

Quando creiamo una password, spesso inseriamo elementi specifici in punti specifici. Come puoi immaginare, la creatrice della password Susan ha provato inizialmente a usare "susan", ma le è stato chiesto di aggiungere lettere maiuscole e numeri. Per facilitarne la memorizzazione, hanno scritto in maiuscolo la prima lettera e aggiunto dei numeri alla fine. Quindi forse un servizio di accesso ha richiesto un simbolo, quindi chi ha impostato la password lo ha aggiunto alla fine.

Possiamo quindi usare la maschera per dire a Hashcat di provare solo caratteri specifici in punti specifici, per sfruttare la facilità con cui le persone possono indovinare le password quando le creano. In questa maschera, "?u" utilizzerà solo lettere maiuscole in quella posizione, "?l" utilizzerà solo lettere minuscole e "?a" rappresenta qualsiasi carattere:

.\hashcat -m 0 -a 3 -1 ?a target.txt ?u?l?l?l?l?a?a?a -o output.txt

Con questa maschera, Hashcat ha decifrato la password in 3 minuti e 10 secondi, molto più velocemente di 4 giorni.

La password di Bitwarden è lunga 10 caratteri e non segue alcun modello prevedibile, quindi per decifrarla sarebbe necessario un attacco Brute Force senza alcuna maschera. Sfortunatamente, quando ho chiesto ad Hashcat di farlo, è stato restituito un errore, dicendo che il numero di combinazioni possibili supera il limite di numeri interi. Secondo un esperto di sicurezza informatica, Bitwarden ha impiegato 3 anni per decifrare la password, il che è sufficiente.

Come proteggere il tuo account dall'hacking della password

I principali fattori che impediscono all'articolo di decifrare la password di Bitwarden sono la sua lunghezza (10 caratteri) e l'imprevedibilità. Pertanto, quando create una password, cercate di renderla il più lunga possibile e di distribuire simboli, numeri e lettere maiuscole in modo uniforme al suo interno. Ciò impedisce agli hacker di utilizzare maschere per prevedere la posizione di ciascun elemento e rende le password molto più difficili da decifrare.

Probabilmente conosci i vecchi proverbi sulle password come "usa un array di caratteri" e "rendila il più lunga possibile". Spero che tu sappia perché le persone consigliano questi utili suggerimenti: sono la differenza fondamentale tra una password facilmente decifrabile e una sicura.

Sign up and earn $1000 a day ⋙

Leave a Comment

Differenza tra TV normale e Smart TV

Differenza tra TV normale e Smart TV

Le smart TV hanno davvero preso d'assalto il mondo. Grazie alle sue numerose funzionalità e alla connettività Internet, la tecnologia ha cambiato il nostro modo di guardare la TV.

Perché il congelatore non ha la luce mentre il frigorifero sì?

Perché il congelatore non ha la luce mentre il frigorifero sì?

I frigoriferi sono elettrodomestici comuni nelle case. I frigoriferi hanno solitamente 2 scomparti: lo scomparto freddo è spazioso e ha una luce che si accende automaticamente ogni volta che l'utente lo apre, mentre lo scomparto congelatore è stretto e non ha luce.

2 modi per risolvere la congestione della rete che rallenta il Wi-Fi

2 modi per risolvere la congestione della rete che rallenta il Wi-Fi

Oltre ai router, alla larghezza di banda e alle interferenze, le reti Wi-Fi sono influenzate da molti fattori, ma esistono alcuni modi intelligenti per potenziare la propria rete.

Come eseguire il downgrade da iOS 17 a iOS 16 senza perdere dati utilizzando Tenorshare Reiboot

Come eseguire il downgrade da iOS 17 a iOS 16 senza perdere dati utilizzando Tenorshare Reiboot

Se vuoi tornare alla versione stabile di iOS 16 sul tuo telefono, ecco la guida di base per disinstallare iOS 17 ed effettuare il downgrade da iOS 17 a 16.

Cosa succede al corpo se mangi yogurt ogni giorno?

Cosa succede al corpo se mangi yogurt ogni giorno?

Lo yogurt è un alimento meraviglioso. Fa bene mangiare yogurt tutti i giorni? Se mangiassi yogurt ogni giorno, come cambierebbe il tuo corpo? Scopriamolo insieme!

Quale tipo di riso è migliore per la salute?

Quale tipo di riso è migliore per la salute?

In questo articolo vengono illustrati i tipi di riso più nutrienti e come sfruttare al massimo i benefici per la salute offerti dal tipo di riso scelto.

Come svegliarsi puntuali la mattina

Come svegliarsi puntuali la mattina

Tra le misure che possono aiutarti a dormire meglio e a svegliarti puntuale al mattino c'è quella di stabilire un orario per dormire e una routine per andare a dormire, cambiare la sveglia e modificare la tua dieta.

Suggerimenti per giocare a Rent Please! Simulazione del proprietario di casa per principianti

Suggerimenti per giocare a Rent Please! Simulazione del proprietario di casa per principianti

Affitto per favore! Landlord Sim è un gioco di simulazione per dispositivi mobili, disponibile per iOS e Android. Giocherai nei panni del proprietario di un complesso di appartamenti e inizierai ad affittare un appartamento con l'obiettivo di migliorarne gli interni e prepararli per gli inquilini.

Ultimi codici di difesa della torre del bagno e come inserirli

Ultimi codici di difesa della torre del bagno e come inserirli

Ottieni il codice del gioco Roblox Bathroom Tower Defense e riscattalo per ottenere fantastiche ricompense. Ti aiuteranno a potenziare o sbloccare torri con danni maggiori.

Struttura, simboli e principi di funzionamento dei trasformatori

Struttura, simboli e principi di funzionamento dei trasformatori

Impariamo a conoscere la struttura, i simboli e i principi di funzionamento dei trasformatori nel modo più accurato.

4 modi in cui lintelligenza artificiale sta migliorando le smart TV

4 modi in cui lintelligenza artificiale sta migliorando le smart TV

Dalla migliore qualità dell'immagine e del suono al controllo vocale e molto altro, queste funzionalità basate sull'intelligenza artificiale stanno rendendo le smart TV molto migliori!

Perché ChatGPT è migliore di DeepSeek

Perché ChatGPT è migliore di DeepSeek

Inizialmente le aspettative per DeepSeek erano alte. In quanto chatbot basato sull'intelligenza artificiale, pubblicizzato come un forte concorrente di ChatGPT, promette funzionalità ed esperienze di chat intelligenti.

Scopri Fireflies.ai: la segretaria AI gratuita che ti fa risparmiare ore di lavoro

Scopri Fireflies.ai: la segretaria AI gratuita che ti fa risparmiare ore di lavoro

È facile trascurare dettagli importanti quando si prendono appunti di altre cose essenziali, e cercare di prendere appunti mentre si chiacchiera può distrarre. Fireflies.ai è la soluzione.

Come allevare lAxolotl in Minecraft, addomesticare la Salamandra in Minecraft

Come allevare lAxolotl in Minecraft, addomesticare la Salamandra in Minecraft

Gli Axolot di Minecraft saranno degli ottimi aiutanti per i giocatori che operano sott'acqua, se sapranno come usarli.

A Quiet Place: The Road Ahead Configurazione del gioco per PC

A Quiet Place: The Road Ahead Configurazione del gioco per PC

La configurazione di A Quiet Place: The Road Ahead ha ricevuto recensioni piuttosto positive, quindi è opportuno valutarla attentamente prima di decidere di scaricarla.