O John the Ripper (JtR) é uma das ferramentas mais poderosas para testes de força bruta e auditoria de senhas. Ele é amplamente utilizado por profissionais de segurança para verificar a robustez das credenciais armazenadas e detectar senhas fracas.
Neste guia, você aprenderá a instalar, configurar e utilizar o John the Ripper para quebrar diferentes tipos de senhas de forma profissional.
1. Instalação do John the Ripper
O John the Ripper está disponível para Windows, Linux e macOS.
No Windows
-
Baixe a versão mais recente no site oficial:
-
Extraia o conteúdo do arquivo ZIP em uma pasta.
-
Acesse a pasta pelo Prompt de Comando e execute:
john.exe --help
Isso verificará se o programa está funcionando corretamente.
No Linux (Kali, Ubuntu, Debian)
-
Instale o John the Ripper com:
sudo apt update && sudo apt install john -y
-
Para testar se a instalação foi bem-sucedida, rode:
john --help
No macOS
-
Instale via Homebrew:
brew install john
2. Quebrando Senhas com o John the Ripper
O John the Ripper pode quebrar senhas de arquivos hash, arquivos ZIP, PDF, senhas de usuários e muito mais.
Passo 1: Gerar o Hash da Senha
John trabalha com hashes em vez de senhas diretas. Para testar uma senha, precisamos gerar um hash.
Por exemplo, para gerar um hash MD5 de "senha123":
echo -n "senha123" | md5sum
Saída:
482c811da5d5b4bc6d497ffa98491e38
Copie esse hash e salve em um arquivo chamado hashes.txt
.
Passo 2: Rodando o Ataque de Quebra
Agora usamos o John para tentar quebrar esse hash:
john --format=raw-md5 --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt
Explicação dos parâmetros:
-
--format=raw-md5
→ Especifica que o hash é MD5. -
--wordlist=/usr/share/wordlists/rockyou.txt
→ Utiliza uma wordlist para tentar quebrar a senha. -
hashes.txt
→ O arquivo que contém os hashes das senhas.
Se a senha estiver na wordlist, o John a revelará na saída.
3. Tipos de Ataques no John the Ripper
O John the Ripper pode realizar diferentes tipos de ataques:
3.1. Ataque por Dicionário
Tenta quebrar senhas comparando os hashes com palavras de um arquivo de dicionário.
john --wordlist=rockyou.txt hashes.txt
💡 Dica: Você pode baixar wordlists na internet, como a famosa rockyou.txt.
3.2. Ataque de Força Bruta
Se a senha não estiver na wordlist, podemos tentar todas as combinações possíveis.
john --incremental hashes.txt
⚠️ Esse método pode levar muito tempo dependendo da complexidade da senha!
3.3. Ataque de Senha Zipada
Se você tiver um arquivo ZIP protegido por senha:
zip2john arquivo.zip > ziphash.txt
john --wordlist=rockyou.txt ziphash.txt
3.4. Ataque de Senha PDF
Para arquivos PDF protegidos por senha:
pdf2john.pl documento.pdf > pdfhash.txt
john --wordlist=rockyou.txt pdfhash.txt
3.5. Quebrando Senhas de Usuários no Linux
Se você tem acesso a um sistema Linux e deseja verificar a segurança das senhas armazenadas:
-
Extraia os hashes do arquivo
/etc/shadow
:unshadow /etc/passwd /etc/shadow > hashes.txt
-
Use o John para quebrar as senhas:
john --wordlist=rockyou.txt hashes.txt
4. Verificando os Resultados
Para ver as senhas descobertas, use:
john --show hashes.txt
Se quiser apagar os resultados anteriores e começar do zero:
john --restore
5. Melhorando a Eficiência dos Testes
5.1. Usando Mais Threads
Se o seu processador tiver vários núcleos, aproveite-os:
john --fork=4 hashes.txt
Isso dividirá o trabalho entre 4 núcleos.
5.2. Utilizando GPUs para Aceleração
Se você tiver uma placa gráfica compatível, pode usar o hashcat, que é otimizado para GPU:
hashcat -m 0 hashes.txt rockyou.txt --force
6. Conclusão
O John the Ripper é uma ferramenta essencial para testes de segurança e auditoria de senhas. Ele permite identificar senhas fracas e vulneráveis para que possam ser corrigidas.
Resumo das habilidades aprendidas:
Agora que você domina o John the Ripper, pode usá-lo para testar e fortalecer a segurança das credenciais de sistemas e arquivos! 🚀
0 Comentários