
Machine-learn password mangling rules
Regras de mutação de senhas aprendidas por máquina!
Esta ferramenta encontra regras eficientes de mutação de senhas (para John the Ripper ou Hashcat) para um determinado dicionário e uma lista de senhas.
A ferramenta está atualmente em qualidade alfa.
Você precisa da toolchain Rust para compilar esta ferramenta. Você pode instalar diretamente:
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
Ou, depois de clonar este repositório:
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
Aqui, 50 é o valor de corte, ou seja, uma regra precisa quebrar pelo menos 50 senhas para ser mantida, e 7 é o número de threads.
Atenção: este programa pode usar muita memória muito rapidamente!
Um artigo detalhado pode ser lido aqui. Ele explica qual é a ideia por trás da ferramenta e o que ela faz.
Todas as medições foram feitas no meu laptop enquanto eu o usava para outras coisas. Estas medições servem apenas para ilustrar o que você deve esperar em relação ao uso de recursos.
Uso de memória na primeira fase
O processamento é dividido em duas partes:
A coluna estimated passwords cracked acima representa a quantidade de senhas do corpus de texto claro que seriam quebradas com as regras geradas usando o dicionário fornecido. Como tudo em aprendizado de máquina, isso não reflete diretamente o desempenho do conjunto de regras. Aumentar esse valor sem pensar será contraproducente, pois levará a:
Como regra geral, recomendo:
| Tamanho do texto claro | Palavras em texto claro | minsize=3 | minsize=4 | minsize=5 | minsize=6 |
|---|
| 11.264 MB | 1M palavras | 3767MB | 3245MB | 2732MB | 2255MB |
| 16.9 MB | 1.5M palavras | 7365MB | 6262MB | 5273MB | 4742MB |
| 22.528 MB | 2M palavras | 9263MB | 5273MB | 6518MB | 5389MB |
| 42.848 MB | 3.8M palavras | 14347MB | 4742MB | 10529MB | 8885MB |