Toda rede que você vai testar tem uma porta com senha. Um prompt de SSH em um servidor de salto esquecido, um servidor FTP em que ninguém entra desde 2019, um painel de administração de roteador ainda rodando com as credenciais de fábrica. Aprender a usar o Hydra é aprender a descobrir, em uns noventa segundos, se aquela porta está mesmo trancada.
O Hydra dispara tentativas de usuário e senha contra um serviço no ar e informa qual combinação entrou. Isso faz dele uma ferramenta de rede, não uma ferramenta de quebra de hash, e essa distinção importa mais do que qualquer opção que você vai aprender hoje. Ele mora na mesma caixa de ferramentas dos scanners e dos utilitários de enumeração do nosso guia de teste de invasão. Se quiser um login para cutucar enquanto lê, abra o lab gratuito Hack the Login em outra aba: leva uns dez minutos e ensina a lição que vem antes da força bruta.
Resumo: o Hydra é um quebrador de autenticação online paralelizado que adivinha credenciais contra um serviço ativo. Instale com sudo apt install hydra (o Kali traz a 9.7). A sintaxe é sempre hydra -l USUARIO -P wordlist.txt ALVO SERVICO. Use -t 4 para SSH, -f para parar no primeiro acerto, e espere que o módulo de formulário web seja a parte que dá trabalho. Ele é barulhento, lento diante das defesas modernas, e mesmo assim continua achando credenciais padrão em redes internas toda semana.
O que é o Hydra?
O Hydra é um quebrador de autenticação de código aberto que ataca serviços de rede enviando a eles, em paralelo, combinações de nome de usuário e senha. Foi escrito por van Hauser, do grupo THC, é licenciado sob a AGPLv3 e suporta mais de cinquenta protocolos, entre eles SSH, FTP, SMB, RDP, MySQL, PostgreSQL, LDAP, SMTP, POP3, IMAP, VNC, SNMP e formulários HTTP.
Você vai ver o nome como THC Hydra, hydra, ou às vezes xhydra quando alguém está falando da interface gráfica em GTK. É tudo o mesmo projeto, hospedado no GitHub em vanhauser-thc/thc-hydra.
Esta é a diferença que confunde quase todo mundo no começo.
Ataques online conversam com um serviço ativo. O Hydra abre uma conexão, manda um palpite, espera o servidor dizer sim ou não, e tenta de novo. A velocidade é limitada pela rede e por aquilo que o servidor permite. Você fica preso a centenas ou poucos milhares de tentativas por minuto, e os logs do alvo registram cada uma delas.
Ataques offline trabalham sobre um hash que você já obteve. Sem rede, sem limite de taxa, sem logs. Uma única GPU de consumidor devora bilhões de tentativas NTLM por segundo. É para isso que servem o hashcat e o John the Ripper.
A regra, então, é simples: se você tem um hash, não é o Hydra que você quer. O Hydra serve para o momento anterior, quando tudo o que você tem é uma porta aberta, um banner de serviço e um palpite sobre o nome de usuário.
Instalar o Hydra e ver o que ele consegue atacar
No Kali Linux ele já vem pronto. Se não estiver lá, ou se você usa Debian ou Ubuntu:
sudo apt update
sudo apt install hydra
O Kali empacota hoje a versão 9.7, que trouxe suporte a GTK3 na interface gráfica e um módulo para MongoDB v2. A interface fica em um pacote separado, hydra-gtk, e você pode ignorá-la sem culpa. Ninguém que usa o Hydra com frequência usa o xhydra.
Se preferir não instalar nada, o projeto publica um contêiner:
docker pull vanhauser/hydra
Três binários acompanham o pacote, e dois deles são realmente úteis:
pw-inspectorfiltra uma wordlist para deixar só as senhas que atendem à política do alvo. Se a aplicação exige 8 caracteres com um número, não faz sentido mandar "gato".dpl4hydramonta uma lista de senhas padrão para um fabricante específico, tirada de uma base de credenciais de fábrica que acompanha a ferramenta. Rodedpl4hydra ciscoe você recebe um arquivologin:passpronto para o-C.hydra-wizardmonta o comando com você, passo a passo. Serve na primeira hora, vira muleta depois.
Antes do primeiro comando de verdade, veja quais módulos a sua build realmente tem. O suporte compilado varia de distribuição para distribuição:
hydra -h
O final da ajuda lista todos os serviços suportados. Se rdp ou ssh não aparecer, seu pacote foi compilado sem a biblioteca correspondente e nenhuma sintaxe, por mais correta que seja, vai resolver.
A sintaxe do Hydra que você realmente precisa
O Hydra tem cerca de trinta opções de linha de comando, e você vai recorrer a um punhado delas. Todo comando segue a mesma forma:
hydra [opções de login] [opções de senha] [ajustes] ALVO SERVICO
Alvo e serviço vêm sempre por último, nessa ordem. Inverta os dois e o Hydra vai avisar que não conhece nenhum serviço chamado 192.0.2.10.
As opções que importam:
-l USUARIOum único nome de usuário.-L users.txtum arquivo com vários.-p SENHAuma única senha.-P passwords.txtum arquivo de senhas.-C creds.txtum arquivo de pareslogin:pass, testados como pares e não como produto cruzado completo. É o que você usa com credenciais de um vazamento ou dodpl4hydra.-t Nconexões em paralelo. O padrão é 16.-fpara tudo assim que um par válido aparece. Quase sempre é o que você quer.-Vmostra cada tentativa. Use uma vez para confirmar que o ataque está bem montado, depois desligue.-s PORTAquando o serviço não está na porta padrão.-o results.txtgrava os acertos em arquivo, com-b jsonse algo depois precisar processá-los.
Existem duas formas equivalentes de indicar o alvo, e trocá-las é o erro mais comum de quem está começando:
hydra -l dana -P rockyou.txt 192.0.2.10 ssh
hydra -l dana -P rockyou.txt ssh://192.0.2.10
As duas rodam o mesmo ataque. A forma de URL fica mais organizada quando você começa a acrescentar opções de módulo, porque tudo permanece em uma única string.
Uma opção rende bem mais do que aparenta: -e nsr. Ela acrescenta três tentativas extras por usuário, além da sua wordlist. n tenta senha vazia, s tenta o nome de usuário como senha e r tenta esse nome invertido. Em redes internas, só a checagem "s" acha contas de serviço com mais frequência do que qualquer wordlist.
Como usar o Hydra contra SSH: seu primeiro ataque
SSH é o ponto de partida clássico porque a resposta não deixa dúvida. O serviço autentica você ou não, sem redirecionamentos nem páginas de erro para interpretar.
hydra -l dana -P /usr/share/wordlists/rockyou.txt 192.0.2.10 ssh -t 4 -f
Saída real, reduzida às linhas que interessam:
Hydra v9.7 (c) 2023 by van Hauser/THC & David Maciejak - Please do not use in
military or secret service organizations, or for illegal purposes [...]
Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2026-09-05 11:04:31
[DATA] max 4 tasks per 1 server, overall 4 tasks, 14344392 login tries (l:1/p:14344392), ~3586098 tries per task
[DATA] attacking ssh://192.0.2.10:22/
[22][ssh] host: 192.0.2.10 login: dana password: sunshine1
1 of 1 target successfully completed, 1 valid password found
A linha que começa com [22][ssh] é o acerto: porta, serviço, host, usuário, senha. Tudo acima dela é contabilidade.
Leia a linha [DATA] antes de sair para o café, porque ela está dizendo quanto tempo isso vai levar. 14.344.392 senhas divididas em 4 tarefas dão cerca de 3,6 milhões de tentativas por tarefa. A um ritmo realista de SSH, de algumas centenas de tentativas por minuto, percorrer a wordlist rockyou.txt inteira levaria meses. Esse número não é motivo de pânico. É motivo para entender que a força bruta online acha senhas fracas que estão no topo de uma lista ordenada, ou não acha nada.
Por que -t 4 e não o padrão de 16
Tire o -t 4 e o Hydra vai te repreender:
[WARNING] Many SSH configurations limit the number of parallel tasks, it is
recommended to reduce the tasks: use -t 4
Esse aviso aparece sempre que -t passa de 8 em um alvo SSH, e não é superstição. O OpenSSH vem com MaxStartups 10:30:100, o que começa a descartar aleatoriamente conexões não autenticadas depois de dez simultâneas e recusa todas a partir de cem. O MaxAuthTries vale 6 por padrão, então o servidor também encerra a sessão depois de seis falhas. Martele com 16 tarefas e boa parte dos seus palpites será descartada antes mesmo de ser verificada, o que produz o pior resultado possível: um ataque lento que não reporta nenhuma senha válida mesmo com uma delas na sua lista.
Na prática, quatro tarefas contra SSH e dezesseis contra um formulário HTTP simples formam um par de padrões sensato. Quando os resultados variam de uma execução para outra, baixe o -t, não aumente.
Atacar um formulário de login web com http-post-form
É aqui que a maioria desiste do Hydra, e vale insistir, porque formulários web são o que você vai encontrar de verdade em um CTF.
O problema é que o HTTP não tem nenhuma noção de login que falhou. O servidor responde 200 OK tanto para o palpite certo quanto para o errado. Você precisa, então, explicar ao Hydra como distinguir os dois, e é para isso que serve o terceiro campo da string do módulo.
A sintaxe tem três partes separadas por dois-pontos:
hydra -l admin -P passwords.txt 192.0.2.20 http-post-form \
"/login.php:user=^USER^&pass=^PASS^:incorrect"
- O caminho.
/login.php, a página para onde o formulário faz o POST. Não a página em que o formulário aparece, se forem diferentes. - O corpo do POST. Copie literalmente da aba de rede do navegador ou do Burp e troque o valor do usuário por
^USER^e o da senha por^PASS^. Mantenha todos os outros campos, inclusive os ocultos. Um token CSRF que você deixou de fora é o motivo de o ataque não devolver nada. - A string de falha. O texto que aparece na resposta quando o login falha. O Hydra trata a presença dessa string como falha e a ausência dela como sucesso.
Dá para inverter esse último campo. Prefixe com S= para casar com o sucesso, o que é mais confiável quando a aplicação redireciona depois de um login válido:
hydra -l admin -P passwords.txt 192.0.2.20 http-post-form \
"/login.php:user=^USER^&pass=^PASS^:S=302"
Você usa um ou outro, nunca os dois. F= é a forma explícita da checagem de falha padrão, e S= a substitui.
Quando o ataque informa que todas as senhas da sua lista funcionaram, a string de falha está errada. Esse é de longe o erro mais comum com este módulo, e a própria ajuda do módulo diz isso com todas as letras. Rode hydra -U http-post-form para lê-la e acrescente -d para despejar as requisições e respostas que o Hydra está de fato trocando.
Três detalhes que economizam uma hora
- Escape os dois-pontos dentro da string. Dois-pontos separam os campos, então um dois-pontos dentro de um cabeçalho ou de um valor precisa ser escrito como
\:. Cabeçalhos personalizados ficam assim:H=Cookie\: sessid=aaaa. - Campos em base64 existem. Se o formulário codifica as credenciais, use
^USER64^e^PASS64^que o Hydra cuida da codificação. - Os cookies são coletados sozinhos. O módulo carrega a página de login antes para pegar um cookie de sessão e segue até cinco redirecionamentos. Use
C=/alguma/paginapara coletar o cookie em outro lugar, ouG=para pular essa pré-requisição quando a aplicação não precisa dela.
Para HTTPS, troque o nome do módulo por https-post-form. Todo o resto continua igual.
Wordlists, velocidade e saber a hora de parar
Sua wordlist decide o resultado muito mais do que as suas opções. Jogar uma lista de 14 milhões de linhas em um ataque online é um movimento de iniciante que parece caprichado e não realiza nada.
Duas abordagens superam isso, e as duas se resumem a mandar menos palpites, melhor escolhidos.
Corte a lista de acordo com a política de senhas do alvo. Se o cadastro rejeita qualquer coisa com menos de 8 caracteres, todo candidato mais curto é tráfego jogado fora:
pw-inspector -i rockyou.txt -o filtered.txt -m 8 -n
Isso mantém só as senhas com pelo menos 8 caracteres que contenham um número. Rode wc -l nos dois arquivos depois para ver quanto tráfego você deixou de enviar.
Pulverize em vez de forçar. Por padrão o Hydra testa todas as senhas contra um usuário antes de passar ao próximo, o que é exatamente o padrão que dispara o bloqueio de conta. A opção -u inverte o laço e testa uma senha em todos os usuários primeiro:
hydra -L users.txt -p 'Autumn2026!' -u 192.0.2.10 smb -t 1 -W 30
Uma senha por usuário a cada passada, uma tarefa só, trinta segundos entre as tentativas. Contra um domínio Active Directory com bloqueio em cinco erros, essa é a diferença entre achar uma conta e travar a empresa inteira. O -W define esse intervalo entre conexões e só faz sentido com poucas tarefas.
Mais duas coisas que vale saber antes de rodar algo demorado. O Hydra grava um arquivo hydra.restore a cada cinco minutos, então uma sessão interrompida com Ctrl-C volta com hydra -R. Esse arquivo não pode ser levado de uma plataforma para outra. E o -M targets.txt ataca uma lista inteira de hosts em uma execução, com -F para parar assim que qualquer host entregar uma credencial.
Quando o Hydra é a ferramenta errada
Avaliação honesta: o Hydra fracassa contra a maioria das aplicações expostas na internet construídas na última década, e é melhor saber disso antes de começar do que descobrir depois de uma tarde sem resultado.
Limitação de taxa, bloqueio de conta, CAPTCHA, autenticação multifator e regras de firewall de aplicação derrubam todos os ataques desse tipo, e qualquer um deles pode estar ativo sem ser visível de fora. O Data Breach Investigations Report 2026 da Verizon aponta que 31% das violações agora começam por uma vulnerabilidade de software, vetor que passou à frente das senhas roubadas como principal porta de entrada. Adivinhar na porta da frente já não é o caminho dominante.
Procure outra ferramenta quando:
- Você já tem hashes. Quebre offline. Ordens de grandeza mais rápido e completamente silencioso.
- O alvo é uma página de login pública. Procure as credenciais em outro lugar primeiro: um diretório
.gitexposto, um arquivo de configuração em um bucket público, um paste esquecido por um desenvolvedor. Procurar quase sempre ganha de adivinhar. - Há um serviço SMB ou LDAP em rede interna. Ferramentas feitas para esses protocolos validam credenciais em uma sub-rede inteira com um comando e lidam direito com a política de bloqueio.
- Você ainda não enumerou. Uma lista de usuários montada a partir de reconhecimento real ganha de longe de uma lista genérica. Encontre os serviços primeiro com as técnicas do nosso guia rápido de Nmap e só então decida o que merece um ataque.
Onde o Hydra continua valendo o seu lugar é na infraestrutura legada e interna: o servidor FTP de uma VLAN de fábrica, a interface web de uma impressora, o switch que nunca teve a credencial de fábrica trocada, a máquina de CTF feita para ser forçada. Nesses casos, ele é rápido, confiável e muitas vezes o caminho mais curto para o primeiro acesso.
Considerações legais e éticas
Lembrete essencial: sempre obtenha autorização por escrito e explícita antes de testar qualquer sistema. Rodar o Hydra contra um host que você não possui nem tem permissão para testar é acesso não autorizado nos termos do artigo 154-A do Código Penal no Brasil (Lei 12.737/2012), do Computer Fraud and Abuse Act nos Estados Unidos, do Computer Misuse Act no Reino Unido e de leis equivalentes em quase todo lugar. Intenção não é defesa.
O Hydra é especialmente fácil de usar mal, então valem alguns limites práticos:
- Teste apenas sistemas nomeados em um documento de escopo assinado, ou ambientes de laboratório que você mesmo montou
- Bloqueio de conta é negação de serviço de verdade. Entenda a política do alvo antes de enviar um único palpite e registre isso por escrito se tiver dúvida
- As credenciais que você recuperar pertencem ao relatório, criptografadas, e a mais nada. Nunca as reutilize fora da janela do projeto
- Pulverizar senhas em um diretório de produção em horário comercial pode bloquear funcionários e parar uma empresa. Combine o horário com o cliente
- Plataformas de CTF e máquinas propositalmente vulneráveis são prática ilimitada. Use-as
O próprio banner do Hydra pede que você não o use para fins ilegais e chama esse pedido de não vinculante. Trate a lei como a parte vinculante.
Perguntas frequentes
Para que serve o Hydra?
Para testar se um serviço de rede aceita credenciais fracas ou padrão. Ele envia combinações de usuário e senha a um serviço ativo e informa qual delas foi aceita. Testadores de invasão o usam contra SSH, FTP, SMB, RDP, bancos de dados e formulários web em avaliações autorizadas, e quem joga CTF recorre a ele o tempo todo.
O Hydra é a mesma coisa que hashcat ou John the Ripper?
Não, e a diferença decide de qual você precisa. O Hydra faz ataques online contra um serviço no ar, limitado pela rede e pelas defesas do servidor. Hashcat e John fazem ataques offline contra hashes que você já tem, a bilhões de tentativas por segundo. Se você tem um hash, o Hydra é a ferramenta errada.
Como instalo o Hydra no Kali Linux?
Ele vem pré-instalado na imagem padrão do Kali. Em uma instalação mínima, rode sudo apt update && sudo apt install hydra. O Kali empacota a versão 9.7. A interface GTK é um pacote separado chamado hydra-gtk, e existe um contêiner oficial com docker pull vanhauser/hydra.
Por que meu ataque http-post-form diz que todas as senhas funcionam?
Sua string de falha está errada. O Hydra decide que uma tentativa falhou procurando essa string na resposta, então, se ela nunca aparece, todo palpite conta como sucesso. Carregue a página de login, envie credenciais erradas de propósito e copie o texto exato da mensagem de erro. Acrescente -d para ver as respostas reais.
Quantas tarefas paralelas devo usar no Hydra?
Quatro para SSH, porque o OpenSSH usa MaxStartups 10:30:100 por padrão e descarta conexões acima disso. A ferramenta avisa quando o -t passa de 8 em um alvo SSH. O padrão de 16 é razoável para formulários HTTP. Use -t 1 com -W quando estiver pulverizando contra uma política de bloqueio.
O Hydra quebra um arquivo ZIP ou PDF protegido por senha?
Não. O Hydra só ataca serviços de rede, ou seja, precisa de algo escutando em uma porta. Formatos de arquivo são problema de quebra offline: use os utilitários que acompanham o John the Ripper, como zip2john ou pdf2john, para extrair um hash e depois quebre-o com o John ou com o hashcat.
Seus próximos passos
Saber usar o Hydra se resume a uma forma de comando e ao discernimento de quando rodá-la. hydra -l usuario -P lista.txt alvo servico cobre a maioria dos casos, -t 4 -f mantém o SSH honesto, -e nsr pega as contas preguiçosas que nenhuma wordlist contém, e -u com -W transforma uma força bruta que dispara bloqueios em uma pulverização que sobrevive. O resto é ler a ajuda do módulo com hydra -U quando você encontrar um protocolo pela primeira vez.
Ler comandos não é a mesma coisa que ver um login ceder. Comece pelo lab Hack the Login, que leva dez minutos e mostra por que olhar o código-fonte da página vem antes de qualquer wordlist, e depois trabalhe o capítulo de ataques de senha do nosso curso de teste de invasão em redes para o tratamento serviço a serviço. Os dois rodam no navegador no plano gratuito da HackerDNA, sem cartão de crédito e sem instalar nada.
Faz parte da série Teste de Invasão
Artigos relacionados: