Por que John the Ripper é tão lento com uma senha simples? [fechadas]

0

Estou usando o John the Ripper versão 1.7.8 no Linux Ubuntu para quebrar senhas de usuários Linux como um exercício. Eu corro o Linux em uma máquina virtual. Eu criei um usuário chamado "User1" para o sistema e defina uma senha "axby" para ele. Então eu peguei o hash da senha com o comando normal:

root@machine:~# unshadow /etc/passwd /etc/shadow > filetocrack

Então eu corro o John com o comando:

root@machine:~# john filetocrack

Enquanto escrevo esta pergunta, o programa funciona 30 minutos tentando adivinhar uma senha simples de quatro letras. Isso é normal? Ou eu fiz algo errado? Qualquer sugestão para acelerar as coisas seria apreciada.

    
por JZ555 04.02.2014 / 15:20

1 resposta

4

Sim, isso é bastante comum, pois John usa um Ataque ao dicionário ou Brute-force . Nenhum dos dois é terrivelmente rápido, especialmente contra muitos algoritmos hash modernos executados em um único thread (executar alguns hashes é caro, como @DavidSchwartz menciona).

John sem argumentos também usa métodos bem lentos, da FAQ :

Q: How long should I expect John to run?

A: It primarily depends on the cracking mode(s) and on your password files (in particular, the type of hashes and the number of different salts, if applicable). Most importantly, you should note that the "incremental" mode, which a default John run (with no command line options) proceeds with after being done with the quicker checks, is not supposed to terminate in a reasonable time.

Uma opção para tentar extrair um melhor desempenho é ativar parallelization com --fork=N ( N é o número de processos) ou --node . Consulte a lista de opções para obter detalhes sobre elas.

Teoricamente, se você tem dois threads executando de maneira semi-inteligente - seu tempo de execução deve ser cortado em metade. (Observe o qualificador "teoricamente", YMMV no mundo real)

    
por 04.02.2014 / 15:53