O Hashcat é uma ferramenta poderosa para recuperação de senhas a partir de hashes. Ele oferece suporte a uma ampla variedade de algoritmos e pode utilizar tanto CPU quanto GPU, sendo um dos mais rápidos da categoria. Neste tutorial, vamos mostrar como começar a usar o Hashcat com o exemplo de quebra de uma hash SHA256.
Instalando o Hashcat
Na maioria dos sistemas Linux, o Hashcat pode ser instalado diretamente pelo gerenciador de pacotes:
sudo apt update
sudo apt install hashcat -y

Para Windows, existe uma versão oficial que pode ser instalada a partir do site oficial. Verifique a instalação com:
hashcat --version
Como exemplo, vamos usar a string "password" com hash SHA256:
echo -n "password" | sha256sum
Resultado:
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
Crie um arquivo com essa hash:
echo "5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8" > hash.txt
Crie um dicionário simples:
echo -e "123456\npassword\nqwerty" > dict.txt

O Hashcat usa códigos numéricos para representar algoritmos. Para SHA256, o código é 1400.
Execute o processo:
hashcat -m 1400 -a 0 -o found.txt hash.txt dict.txt
Parâmetros explicados:
- -m 1400 — modo SHA256;
- -a 0 — ataque por dicionário;
- -o found.txt — salva as senhas encontradas.
Após a conclusão, verifique o resultado:
cat found.txt
Exemplo de saída:
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8:password

Parâmetros úteis para ajustar a performance:
- --force — força execução mesmo com hardware não compatível;
- --status — exibe o status em tempo real;
- -w 3 — define o nível de performance (de 1 a 4).
Se não for mais usar os arquivos:
rm hash.txt dict.txt found.txt
Opções para personalizar a busca
Além do ataque por dicionário, o Hashcat permite o uso de máscaras e combinações com dicionários:
Código | Tipo de Ataque | Descrição |
---|---|---|
0 | Dicionário | Ataque com base em lista de senhas |
1 | Combinação | Combina duas listas |
3 | Força Bruta (Mask) | Ataque com padrão/máscara |
6 | Híbrido Dicionário+Mask | Ex: password123 |
7 | Híbrido Mask+Dicionário | Ex: 123password |
Máscaras disponíveis para criar padrões:
Máscara | Valor |
---|---|
?l | letra minúscula |
?u | letra maiúscula |
?d | número |
?s | caractere especial |
?a | qualquer caractere |
Exemplo de força bruta para senha de 8 dígitos:
hashcat -a 3 -m 0 hash.txt ?d?d?d?d?d?d?d?d
Ou com opções combinadas:
hashcat -a 6 -m 0 hash.txt dict.txt ?d?d
O Hashcat é uma ferramenta indispensável para testar a força de senhas. Use-o apenas para fins legais: auditoria de segurança, aprendizado ou recuperação de dados próprios. O uso indevido da ferramenta constitui crime.