
Regole di mangling delle password apprese tramite machine learning
Regole di mangling delle password apprese tramite machine learning!
Questo strumento trova regole di mangling delle password efficienti (per John the Ripper o Hashcat) per un dato dizionario e un elenco di password.
Lo strumento è attualmente di qualità alpha.
Per compilare questo strumento è necessario il toolchain Rust. Puoi installarlo direttamente:
cargo install --git https://github.com/synacktiv/rulesfinder
ulimit -d 8388608 # limit memory usage to 8GBB
rulesfinder -w path/to/wordlist --cleartexts path/to/cleartexts -n 50 -t 7 --minsize 3 | tee result
Oppure, dopo aver clonato questo repository:
ulimit -d 8388608 # limit memory usage to 8GBB
cargo run --release -- -w path/to/wordlist --cleartexts path/to/cleartexts -n 50 -t 7 --minsize 3 | tee result
Qui, 50 è il valore di soglia (cutoff), ovvero una regola deve decifrare almeno 50 password per essere mantenuta, e 7 è il numero di thread.
Attenzione, questo programma può usare molta memoria molto rapidamente!
Un articolo approfondito può essere letto qui. Spiega qual è l'idea alla base dello strumento e cosa fa.
Tutte le misurazioni sono state eseguite sul mio laptop mentre lo stavo usando per fare altro. Queste misurazioni servono solo a illustrare ciò che puoi aspettarti in termini di utilizzo delle risorse.
Utilizzo di memoria per la prima fase
L'elaborazione è composta da due parti:
La colonna numero stimato di password decifrate sopra è la quantità di password nel corpus di testi in chiaro che sarebbero state decifrate con le regole generate usando il dizionario dato. Come per tutto ciò che riguarda il machine learning, non riflette direttamente le prestazioni del ruleset. Aumentare questo valore senza criterio sarà controproducente, poiché porterà a:
Come regola pratica, consiglio:
| Dimensione del testo in chiaro | Parole del testo in chiaro | minsize=3 | minsize=4 | minsize=5 | minsize=6 |
|---|
| 11.264 MB | 1M parole | 3767MB | 3245MB | 2732MB | 2255MB |
| 16.9 MB | 1.5M parole | 7365MB | 6262MB | 5273MB | 4742MB |
| 22.528 MB | 2M parole | 9263MB | 5273MB | 6518MB | 5389MB |
| 42.848 MB | 3.8M parole | 14347MB | 4742MB | 10529MB | 8885MB |