O ataque de força bruta (brute force) é uma das técnicas mais antigas e diretas usadas para quebrar senhas e autenticações. Consiste em testar todas as combinações possíveis até encontrar a correta. Embora seja um método relativamente simples, continua eficaz contra sistemas mal configurados ou senhas fracas.
O Kali Linux, uma distribuição voltada para testes de segurança, oferece diversas ferramentas para realizar esse tipo de ataque de forma automatizada. Nesta matéria, vamos abordar o conceito, as ferramentas envolvidas, e apresentar exemplos práticos de brute force com ferramentas disponíveis no Kali Linux.
O que é Brute Force?
É uma técnica de tentativa e erro. O invasor tenta múltiplas combinações de senhas ou chaves com o objetivo de obter acesso a um sistema. O tempo necessário para o sucesso depende da complexidade da senha, da velocidade da ferramenta usada e das defesas do sistema alvo.
Ferramentas de brute force no Kali Linux
O Kali Linux já vem com várias ferramentas de brute force instaladas por padrão. As mais populares são:
Hydra (também chamada THC-Hydra)
Medusa
Ncrack
John the Ripper
Aircrack-ng (para redes Wi-Fi)
Vamos focar nesta matéria na ferramenta Hydra, que é versátil, simples de usar e aceita diversos protocolos (SSH, FTP, HTTP, SMB, RDP, Telnet, entre outros).
Exemplo prático: Brute force em SSH usando Hydra
Antes de realizar qualquer teste, é importante frisar que essa prática é ilegal se feita contra sistemas sem autorização. Os testes aqui apresentados devem ser realizados apenas em ambientes de laboratório ou com permissão explícita.
Imagine que você tem um servidor SSH rodando no IP 192.168.0.100. Você conhece o nome de usuário, mas quer descobrir a senha. Você tem uma lista de senhas em um arquivo chamado senhas.txt.
O comando para executar o brute force com Hydra seria assim:
hydra -l usuario -P senhas.txt ssh://192.168.0.100
Explicação do comando:
-l usuario define o nome de usuário que será usado em todas as tentativas
-P senhas.txt define o caminho para o arquivo com a lista de senhas
ssh://192.168.0.100 define o protocolo (SSH) e o alvo (o IP do servidor)
O Hydra testará todas as senhas do arquivo senhas.txt para o usuário especificado até encontrar a correta (ou até esgotar a lista).
Exemplo prático: Brute force em login web (formulário HTML)
Imagine agora que você tem um sistema web com um formulário de login em http://192.168.0.200/login.php, e deseja fazer brute force no campo de senha para o usuário admin.
O comando seria algo como:
hydra -l admin -P senhas.txt 192.168.0.200 http-post-form "/login.php:usuario=^USER^&senha=^PASS^:login inválido"
Explicação:
/login.php é o caminho do formulário
usuario=^USER^&senha=^PASS^ é o corpo da requisição POST, onde Hydra substitui ^USER^ pelo usuário e ^PASS^ pela senha da lista
login inválido é a string que indica que o login falhou (Hydra procura por essa frase na resposta para saber se deve continuar)
Esse tipo de ataque exige que você entenda como o formulário web funciona, analisando-o com ferramentas como o navegador ou o Burp Suite.
Como gerar listas de senhas com o Crunch
O Kali Linux também traz o Crunch, uma ferramenta para gerar listas de senhas personalizadas. Por exemplo, para gerar todas as combinações de 4 a 6 caracteres numéricos, você pode usar:
crunch 4 6 0123456789 -o senhas_numericas.txt
Esse comando cria um arquivo com todas as senhas possíveis entre 4 e 6 dígitos usando apenas números.
Defesas contra brute force
Sistemas bem configurados usam diversas técnicas para se proteger contra esse tipo de ataque:
Bloqueio temporário após tentativas falhas: impede que o atacante continue tentando após um número de falhas.
CAPTCHA: impede o uso de automação.
Autenticação em dois fatores (2FA): mesmo com a senha, o atacante precisa de outro código.
Senhas fortes: aumentam drasticamente o tempo necessário para um brute force ter sucesso.
Monitoramento de logs e alertas: permite detectar tentativas em tempo real.
Considerações legais e éticas
O uso de ferramentas de brute force sem autorização é crime em praticamente todos os países. No Brasil, se enquadra no artigo 154-A do Código Penal (invasão de dispositivo informático), com penas que variam de multa a reclusão. O uso dessas técnicas só deve ser feito em ambientes de laboratório, CTFs (Capture the Flag), simulações autorizadas ou testes de penetração com contrato formal.