
brutus v1.15.0
Ferramenta de teste de credenciais rápida e sem dependências em Go. Realiza força bruta em SSH, MySQL, PostgreSQL, Redis, MongoDB, SMB e mais de 20 protocolos. Alternativa ao Hydra com integração nativa ao pipeline nerva/naabu.
Brutus
"Et tu, Brute?" — As últimas palavras antes das credenciais caírem.
Ferramenta moderna de teste de credenciais em Go puro
Instalação • Início Rápido • Pipeline • Protocolos • Enumeração • Proxy • Biblioteca
Visão Geral
Brutus é uma ferramenta de teste de autenticação multiprotocolo projetada para preencher uma lacuna crítica nas ferramentas de segurança ofensiva: validação eficiente de credenciais em diversos serviços de rede. Embora ferramentas focadas em HTTP sejam abundantes, testadores de penetração e operadores de red team frequentemente encontram bancos de dados, SSH, SMB e outros serviços de rede que exigem capacidades de teste de autenticação específicas.
Construído em Go como um único binário sem dependências externas, o Brutus integra-se perfeitamente com o Nerva para descoberta automatizada de serviços, permitindo que os operadores identifiquem e testem rapidamente vetores de autenticação em faixas de rede inteiras.
Principais recursos:
- Zero dependências: Binário único, multiplataforma (Linux, Windows, macOS)
- 43 protocolos: SSH, RDP, MySQL, PostgreSQL, MSSQL, Oracle, Redis, SMB, LDAP, WinRM, SNMP, HTTP Basic Auth, MQTT e mais
- Suporte a proxy SOCKS5: Encaminhe todo o tráfego através de um proxy SOCKS5 com
--proxy - Modos de agressividade:
--mode cautious|default|aggressivepara ajustar cobertura vs. segurança - Integração com pipeline: Suporte nativo para fluxos de trabalho Nerva, naabu, nmap e masscan
- Chaves ruins incorporadas: Coleção integrada de chaves SSH conhecidas (Vagrant, F5, ExaGrid, etc.)
- Enumeração de contas: enumeração de oráculo de existência de conta, enumeração de usuários Kerberos, geração de e-mail, autenticação por código de dispositivo Microsoft Teams/Entra ID
- Biblioteca Go: Importe diretamente em suas ferramentas de automação de segurança
- Pronto para produção: Limitação de taxa, pool de conexões e tratamento abrangente de erros
Por que Brutus?
Ferramentas tradicionais como THC Hydra serviram bem a comunidade de segurança, mas vêm com atritos significativos: cadeias de dependências complexas, problemas de compilação específicos de plataforma e nenhuma integração nativa com fluxos de trabalho modernos de reconhecimento.
Brutus é construído especificamente para segurança ofensiva moderna:
-
Implantação verdadeiramente sem dependências: Baixe um único binário e execute. Sem
libssh-dev, semlibmysqlclient-dev, sem erros de compilação. Funciona de forma idêntica em Linux, macOS e Windows. -
Integração nativa com pipeline: Brutus fala JSON e integra-se diretamente com Nerva, naabu, nmap e masscan. Encaminhe serviços descobertos diretamente para teste de credenciais sem conversão de formato ou scripting.
-
Inteligência incorporada: Chaves SSH ruins conhecidas (Vagrant, F5 BIG-IP, ExaGrid, etc.) são compiladas no binário. Use
brutus badkeyspara testá-las contra alvos SSH. -
Design focado em biblioteca: Importe Brutus diretamente em suas ferramentas de segurança Go. Construa automação personalizada sem recorrer a processos externos.
# Full network credential audit in one pipeline (JSON mode)
naabu -host 10.0.0.0/24 -p 22,3306,5432,6379 -silent | nerva --json | brutus creds --json
# Or use Nerva's default URI output — no --json flags needed
naabu -host 10.0.0.0/24 -p 22,3306,5432,6379 -silent | nerva | brutus creds
Casos de Uso
Teste de Penetração
- Validar credenciais descobertas em múltiplos serviços durante avaliações internas
- Testar padrões de reutilização de senhas em serviços de banco de dados e compartilhamento de arquivos
- Identificar credenciais padrão em infraestrutura recém-implantada
Operações de Red Team
- Validação rápida de credenciais após vazamentos de senhas ou campanhas de phishing
- Testar oportunidades de movimento lateral em serviços de rede
- Validar credenciais comprometidas em ambientes heterogêneos
Pulverização de Chaves Privadas
Encontrou uma chave privada em um sistema comprometido? Pulverize-a pela rede para descobrir onde mais ela concede acesso:
# Discover SSH services and spray a found private key
naabu -host 10.0.0.0/24 -p 22 -silent | \
nerva --json | \
brutus creds -u root,admin,ubuntu,deploy -k /path/to/found_key --json
Este pipeline descobre todos os serviços SSH, identifica-os com o Nerva e testa a chave comprometida contra nomes de usuário comuns—revelando oportunidades de movimento lateral em segundos.
Teste de Painel de Administração Web
Descubra serviços HTTP e teste credenciais usando detecção com IA ou listas de credenciais manuais:
# AI-powered: auto-detect devices and suggest default credentials
naabu -host 10.0.0.0/24 -p 80,443,3000,8080,9090 -silent | \
nerva --json | \
brutus web --experimental-ai --json
# Manual: test specific credentials against web panels
naabu -host 10.0.0.0/24 -p 80,443,8080 -silent | \
nerva --json | \
brutus web -c "admin:admin,root:password" --json
# Default wordlist: test common credentials without AI or -c
naabu -host 10.0.0.0/24 -p 80,443,8080 -silent | \
nerva --json | \
brutus web --json
Validação de Segurança
- Testar credenciais padrão em serviços recém-implantados
- Validar a aplicação da política de senhas em todas as plataformas
- Gerar trilhas de auditoria para conformidade e avaliações de segurança
Instalação
Binários Pré-compilados (Recomendado)
Baixe em GitHub Releases:
# Linux (amd64)
curl -L https://github.com/praetorian-inc/brutus/releases/latest/download/brutus-linux-amd64.tar.gz | tar xz
sudo mv brutus /usr/local/bin/
# macOS (Apple Silicon)
curl -L https://github.com/praetorian-inc/brutus/releases/latest/download/brutus-darwin-arm64.tar.gz | tar xz
sudo mv brutus /usr/local/bin/
# macOS (Intel)
curl -L https://github.com/praetorian-inc/brutus/releases/latest/download/brutus-darwin-amd64.tar.gz | tar xz
sudo mv brutus /usr/local/bin/
# Windows (PowerShell)
Invoke-WebRequest -Uri https://github.com/praetorian-inc/brutus/releases/latest/download/brutus-windows-amd64.zip -OutFile brutus.zip
Expand-Archive -Path brutus.zip -DestinationPath .
Remove-Item brutus.zip
Instalação via Go
go install github.com/praetorian-inc/brutus/cmd/brutus@latest
Início Rápido
Subcomandos
O Brutus organiza sua funcionalidade nestes subcomandos focados: