Vuoi sapere quanto tempo ci vuole per provare un codice di accesso? Di seguito vengono spiegati i principi dei tre metodi utilizzati per la crittografia: l’attacco brutale, l’attacco basato su dizionari e l’attacco mascherato. Vengono inoltre spiegati i motivi per cui ci sono così grandi differenze nella difficoltà di ciascun formato di file, nonché le differenze nel potere calcolativo tra grafiche video e processori.
| Elementi di contrasto | Scarica tu stesso il software di cracking | Lascialo a noi |
|---|---|---|
| Potenza di calcolo | Un computer domestico, nella maggior parte dei casi, ha solo una scheda grafica integrata | Più decrittografatori GPU che eseguono la stessa attività contemporaneamente |
| Dizionario di password | Ci sono centinaia di migliaia di articoli trovati casualmente su Internet, molti ripetuti e non validi | Dizionari accumulati e puliti nel corso degli anni, classificati in base alle abitudini di utilizzo |
| Strategia di cracking | Proverò solo uno per uno dall'inizio alla fine | Prima il dizionario, poi la maschera, poi il volume completo, le strategie multi-livello vengono promosse strato dopo strato |
| Puoi continuare a correre | Il computer deve rimanere acceso, se lo spegne o lo riavvia, tutti gli sforzi precedenti saranno sprecati | 7×24 funziona sul server e non sarà influenzato anche se spegni il computer |
| Possibilità di sbloccare | Tutto dipende dalla fortuna, praticamente non c'è possibilità se la password è un po' più lunga | Coprire prima la combinazione più probabile, le password brevi spesso hanno risultati entro decine di minuti |
| Costo iniziale | Nessuno si preoccupa dell'installazione del driver, della configurazione della riga di comando e della segnalazione di | Basta caricare il file e ti verranno avvisati i risultati |
L’essenza del recupero della password consiste nel provare continuamente tra tutte le possibili combinazioni, fino a trovare quella giusta. Più velocemente si procede e meno combinazioni vengono testate, maggiore è la probabilità di successo; al contrario, più sono le combinazioni e più alta è il costo per ogni tentativo, rendendo sempre più remota la speranza di riuscire a recuperare la password. Questo calcolatore permette di quantificare quante volte è necessario provare e per quanto tempo, permettendoti di avere una percezione più chiara riguardo alla sicurezza dei tuoi file. Inoltre, capisci anche perché alcuni file possono essere aperti in pochi minuti, mentre altri non possono essere aperti nemmeno dopo aver spezzato il computer.
Il metodo della forza bruta non dipende da alcuna conoscenza preliminare; si procede semplicemente esaminando tutte le possibili combinazioni, basandosi sul set di caratteri e sulla lunghezza delle password. Per una password di 8 caratteri composta solo da numeri, esistono soltanto un miliardo di combinazioni possibili. Invece, per una password composta da lettere maiuscole/minuscole, numeri e simboli, il numero di combinazioni possibili supera i 6×10¹⁴. Questo metodo procede fino alla ultima combinazione possibile. Il vantaggio è che, finché ci sono abbastanza tempo, in teoria è possibile trovare tutte le password possibili. Tuttavia, il costo è rappresentato dall’esplosione esponenziale del numero di combinazioni possibili con l’aumentare della lunghezza della password e del set di caratteri utilizzati. Per una password abbastanza lunga, sarebbe necessario utilizzare il tempo di diverse generazioni per provare tutte le possibili combinazioni.
La maggior parte delle persone non utilizza codici casuali come password, ma preferisce usare date di nascita, nomi, sequenze di tasti o parole comuni. Gli attacchi basati su dizionari permettono di organizzare questi codici in una lista di parole, e provando uno per uno, è possibile individuare le password deboli in pochi minuti. L’efficienza di questo metodo è molto superiore rispetto a quello del brute force, ma presuppone che la password effettivamente si trovi nella lista di parole disponibili; se invece si tratta di password fortemente casuali, l’attacco fallisce. Abbiamo accumulato e purificato una vasta collezione di dizionari di password nel corso degli anni, proprio per aumentare l’efficacia di questo metodo.
Gli attacchi basati su maschere rappresentano una versione “intelligente” del brute force cracking: se si ricorda che “la password deve avere 8 caratteri, deve iniziare con una lettera maiuscola e deve terminare con ‘2024’”, è possibile fornire queste informazioni al programma di cracking, in modo che generi soltanto le combinazioni che soddisfano i requisiti. L’insieme di combinazioni originale, pari a 6×10¹⁴, può essere ridotto rapidamente a pochi miliardi di combinazioni possibili; il tempo necessario per completare il cracking diminuisce notevolmente, passando da “l’età dell’universo” a “poche ore”. Questo è anche il motivo per cui, quando si inviano delle richieste di cracking, è sempre meglio fornire più informazioni possibili… il successo del cracking aumenterà notevolmente.
I file non vengono confrontati direttamente con le password, ma con i “valori hash” ottenuti da tali password. Ogni volta che si prova una nuova password, il programma effettua un calcolo hash. Più volte si ripete questo processo, più lento diventa l’operazione. I formati vecchi presentano pochissime protezioni: Office 97 utilizza MD5/RC4, e la grafica adatta può provare milioni di combinazioni al secondo; mentre in Office 2013 viene utilizzato il metodo PBKDF2, che richiede circa centomila iterazioni al secondo, quindi è molto più lento, circa diecimila volte meno veloce rispetto ai formati precedenti. Il metodo RC4 utilizzato in PDF è piuttosto debole, mentre AES è leggermente più efficace. Il formato RAR5 richiede circa trentamila iterazioni al secondo, quindi è decine di volte più lento rispetto a RAR3; il formato 7Z, invece, richiede oltre cinquanta migliaia di iterazioni al secondo, il che lo rende uno dei formati più difficili da crittografare. Lo stesso codice di accesso può essere decifrato in pochi minuti su un altro computer, ma potrebbe richiedere giorni per essere decifrato sul proprio computer… La ragione sta proprio qui.
I calcoli di hash sono esempi tipici di operazioni “ripetitive e indipendenti l’una dall’altra”, e si adattano perfettamente all’architettura concorrente delle grafiche video: una grafica video per giochi di fascia alta possiede migliaia di core, quindi può eseguire milioni di calcoli di hash contemporaneamente, con velocità che sono decine o centinaia di volte superiori a quella delle CPU. I computer normali, invece, hanno soltanto grafiche video integrate, oppure affidano il compito al CPU, il che rende l’operazione molto lenta. Il nostro metodo di risoluzione dei problemi consiste nell’utilizzare diversi server GPU per eseguire contemporaneamente lo stesso compito; inoltre, l’uso di strategie come dizionari e masking permette di ridurre gradualmente l’entità del problema da risolvere. Questo è proprio il motivo per cui ci vogliono mesi per risolvere un problema da casa, mentre per noi basta pochi minuti per ottenere i risultati desiderati.
Quindi, ogni aumento di una posizione nella lunghezza della password, o ogni ampliamento del set di caratteri utilizzati, comporta un aumento notevole della difficoltà nel recuperare la password. Invece, utilizzando formati di file più veloci o ricordando più indizi per la password, è possibile ridurre notevolmente il tempo necessario per recuperarla. Il calcolatore sopra menzionato ha già quantificato tutti questi fattori: inserendo il tipo di file e l’ambito della password, è possibile vedere quanto tempo richiede il recupero della password, sia sul proprio computer che nel nostro cluster. Se i risultati non sono soddisfacenti, potete semplicemente affidarci il file e vedere cosa possiamo fare.
Dipende dalla lunghezza della password, dall’insieme di caratteri utilizzati e dal metodo di crittografia del file. Per una password di 8 bit, esistono circa 100 milioni di combinazioni possibili; un computer normale potrebbe impiegare ore o addirittura giorni per provare tutte le combinazioni. Per una password di 12 bit, che include lettere maiuscole e minuscole, numeri e simboli, il numero di combinazioni possibili supera i 10²⁴… quindi potrebbero essere necessari migliaia di anni per trovare la combinazione giusta. È possibile effettuare un calcolo immediato utilizzando il calcolatore presente in questa pagina.
La brute force non dipende da conoscenze preesistenti; cerca tutte le possibili combinazioni. Gli attacchi basati su dadi, invece, provano prima le parole di controllo comuni e deboli, il che rende l’operazione più efficiente. Gli attacchi basati su masking, infine, utilizzano informazioni già note (come numeri di 8 cifre, parole iniziate con lettere maiuscole) per limitare l’ambito delle ricerche. In questo modo, vengono generate soltanto le combinazioni che soddisfano i requisiti, riducendo notevolmente il numero di possibilità da esaminare.
Poiché il numero di iterazioni del hash varia notevolmente a seconda del formato utilizzato. Office 97 utilizza un metodo MD5/RC4 meno efficace; la grafica adatta può eseguire milioni di iterazioni al secondo. Con Office 2013, il numero di iterazioni è di circa centomila, con una frequenza di circa mille iterazioni al secondo… quindi diecimila volte più lento rispetto a Office 97. Il formato 7Z richiede oltre cinquecentomila iterazioni, il che lo rende uno dei formati più difficili da elaborare.
Portateci i documenti e eseguire prima la combinazione più probabile, è più significativo che eseguire da solo a casa per qualche giorno.