
Generatore di parole ad alte prestazioni con set di caratteri configurabile per posizione
Generatore di parole ad alte prestazioni con charset configurabile per posizione
Prova tutte le combinazioni da un determinato keyspace proprio come in un attacco Brute-Force, ma più specifico.
Il motivo per fare questo e non attenersi al tradizionale Brute-Force è che vogliamo ridurre il keyspace dei candidati password a uno più efficiente.
Ecco un singolo esempio. Vogliamo crackare la password: Julia1984
In un attacco Brute-Force tradizionale abbiamo bisogno di un charset che contenga tutte le lettere maiuscole, tutte le lettere minuscole e tutte le cifre (aka “mixalpha-numeric”). La lunghezza della password è 9, quindi dobbiamo iterare attraverso 62^9 (13.537.086.546.263.552) combinazioni. Diciamo che crackiamo a una velocità di 100M/s, questo richiede più di 4 anni per completare.
Nell'attacco a maschera conosciamo gli umani e come progettano le password. La password sopra corrisponde a un pattern semplice ma comune. Un nome e un anno aggiunti. Possiamo anche configurare l'attacco per provare le lettere maiuscole solo nella prima posizione. È molto raro vedere una lettera maiuscola solo nella seconda o terza posizione. Per farla breve, con l'attacco a maschera possiamo ridurre il keyspace a 522626262610101010 (237.627.520.000) combinazioni. Con la stessa velocità di cracking di 100M/s, questo richiede solo 40 minuti per completare.
Non ce n'è. Si può sostenere che l'esempio sopra è molto specifico ma questo non conta. Anche nell'attacco a maschera possiamo configurare la nostra maschera per usare esattamente lo stesso keyspace dell'attacco Brute-Force. Il fatto è solo che questo non può funzionare al contrario.
Per ogni posizione dei candidati password generati dobbiamo configurare un placeholder. Se una password che vogliamo crackare ha lunghezza 8, la nostra maschera deve consistere di 8 placeholder.
Ci sono quattro parametri da riga di comando per configurare quattro charset personalizzati.
Questi parametri da riga di comando hanno quattro scorciatoie analoghe chiamate -1, -2, -3 e -4. Puoi specificare i caratteri direttamente sulla riga di comando.
Un attacco a maschera è sempre specifico per una lunghezza di password. Ad esempio, se usiamo la maschera ”?l?l?l?l?l?l?l?l” possiamo crackare solo una password di lunghezza 8. Ma se la password che proviamo a crackare ha lunghezza 7 non la troveremo. Ecco perché dobbiamo ripetere l'attacco diverse volte, ogni volta aggiungendo un placeholder alla maschera. Questo è automatizzato in modo trasparente usando il flag ”--increment”.
Attualmente, è il generatore di parole più veloce al mondo. Ecco alcune statistiche:
Per evitare irregolarità durante il test, tutto l'output è stato inviato a /dev/null.
I seguenti comandi creano i seguenti candidati password:
command: ?l?l?l?l?l?l?l?l
keyspace: aaaaaaaa - zzzzzzzz
command: -1 ?l?d ?1?1?1?1?1
keyspace: aaaaa - 99999
command: password?d
keyspace: password0 - password9
command: -1 ?l?u ?1?l?l?l?l?l19?d?d
keyspace: aaaaaa1900 - Zzzzzz1999
command: -1 ?dabcdef -2 ?l?u ?1?1?2?2?2?2?2
keyspace: 00aaaaa - ffZZZZZ
command: -1 efghijklmnop ?1?1?1
keyspace: eee - ppp
Esegui semplicemente make
Binari per Linux, Windows e OSX: https://github.com/jsteube/maskprocessor/releases