Comandos Brutus
Comandos abrangentes da ferramenta de teste de credenciais multi-protocolo Brutus para testes de penetração e avaliações de segurança.
Instalação
Seção intitulada “Instalação”| Comando | Descrição |
|---|---|
go install github.com/praetorian-inc/brutus@latest | Instalar via Go |
| Download do GitHub Releases | Binário único pré-compilado |
brutus --version | Mostrar versão do Brutus |
brutus --help | Mostrar ajuda e comandos disponíveis |
chmod +x brutus | Tornar binário baixado executável |
Uso Básico
Seção intitulada “Uso Básico”| Comando | Descrição |
|---|---|
brutus ssh --host 192.168.1.1 | Testar credenciais SSH |
brutus ssh --host 192.168.1.1 -u admin -p passwords.txt | SSH com usuário e wordlist |
brutus mysql --host 192.168.1.1 -u root | Testar credenciais MySQL |
brutus rdp --host 192.168.1.1 -u administrator | Testar credenciais RDP |
brutus smb --host 192.168.1.1 -u admin | Testar credenciais SMB |
brutus ftp --host 192.168.1.1 -u anonymous | Testar credenciais FTP |
Protocolos Suportados
Seção intitulada “Protocolos Suportados”| Protocolo | Descrição |
|---|---|
ssh | Autenticação Secure Shell |
mysql | Autenticação de banco de dados MySQL |
postgresql | Autenticação de banco de dados PostgreSQL |
redis | Autenticação Redis |
mongodb | Autenticação MongoDB |
smb | Server Message Block |
rdp | Remote Desktop Protocol |
ftp | File Transfer Protocol |
telnet | Autenticação Telnet |
vnc | Autenticação VNC |
snmp | Teste de string de comunidade SNMP |
ldap | Autenticação LDAP |
mssql | Microsoft SQL Server |
http-basic | Autenticação HTTP Basic |
http-form | Autenticação baseada em formulário HTTP |
smtp | Autenticação SMTP |
pop3 | Autenticação de email POP3 |
imap | Autenticação de email IMAP |
cassandra | Autenticação de banco de dados Cassandra |
oracle | Autenticação de banco de dados Oracle |
Opções de Credenciais
Seção intitulada “Opções de Credenciais”| Flag | Descrição |
|---|---|
-u <user> | Usuário único |
-U <file> | Arquivo de wordlist de usuários |
-p <pass> | Senha única |
-P <file> | Arquivo de wordlist de senhas |
-C <file> | Arquivo combo (user:pass por linha) |
--default-creds | Testar credenciais padrão comuns |
--empty-password | Testar senhas vazias |
--user-as-pass | Testar nome de usuário como senha |
--reverse-user | Testar nome de usuário reverso como senha |
Opções de Conexão
Seção intitulada “Opções de Conexão”| Flag | Descrição |
|---|---|
--host <ip> | IP ou hostname do alvo |
--port <port> | Porta customizada (sobrescreve padrão) |
--hosts-file <file> | Arquivo com lista de hosts alvo |
-t <threads> | Número de threads simultâneas |
--timeout <seconds> | Timeout de conexão por tentativa |
--delay <ms> | Atraso entre tentativas |
--retry <count> | Número de tentativas em falha |
--proxy <url> | Rotear através de proxy |
Opções de Saída
Seção intitulada “Opções de Saída”| Flag | Descrição |
|---|---|
-o <file> | Salvar resultados em arquivo |
--json | Saída em formato JSON |
--json-pretty | Saída JSON formatada |
--quiet | Suprimir saída verbosa |
--verbose | Aumentar verbosidade de saída |
--no-color | Desabilitar saída colorida |
--found-only | Mostrar apenas logins bem-sucedidos |
Opções Específicas de SSH
Seção intitulada “Opções Específicas de SSH”| Flag | Descrição |
|---|---|
--ssh-key <file> | Testar com chave privada SSH |
--ssh-badkeys | Testar chaves SSH ruins/padrão conhecidas |
--ssh-agent | Usar agente SSH para chaves |
--ssh-vagrant | Testar chave insegura Vagrant |
--ssh-key-passphrase <pass> | Passphrase para chave criptografada |
Integração de Pipeline
Seção intitulada “Integração de Pipeline”| Comando | Descrição |
|---|---|
naabu -host 192.168.1.0/24 -p 22 -json | brutus ssh | Pipar resultados de varredura naabu |
fingerprintx -json | brutus auto | Auto-detectar protocolo de fingerprint |
brutus ssh --json | jq '.[] | select(.success)' | Filtrar logins bem-sucedidos com jq |
echo '{"host":"192.168.1.1","port":22}' | brutus ssh | Pipar alvo único como JSON |
brutus ssh --json -o results.json | Salvar resultados JSON em arquivo |
Uso Avançado
Seção intitulada “Uso Avançado”| Comando | Descrição |
|---|---|
brutus ssh -t 50 --delay 100 | Teste com taxa limitada (50 threads, atraso de 100ms) |
brutus auto --hosts-file targets.txt | Auto-detectar e testar múltiplos alvos |
brutus http-form --url <url> --form-data "user=^USER^&pass=^PASS^" | Força bruta de formulário HTTP |
brutus http-basic --url <url> | Teste de autenticação HTTP Basic |
brutus ssh --default-creds --hosts-file iot-devices.txt | Varredura de credenciais padrão de IoT |
Teste de Credencial Padrão
Seção intitulada “Teste de Credencial Padrão”| Comando | Descrição |
|---|---|
brutus ssh --default-creds | Testar credenciais padrão de SSH |
brutus mysql --default-creds | Testar padrões MySQL (root/em branco, etc.) |
brutus postgresql --default-creds | Testar padrões PostgreSQL |
brutus redis --default-creds | Testar padrões Redis |
brutus snmp --default-creds | Testar strings de comunidade SNMP |
Teste de Chaves Ruins (SSH)
Seção intitulada “Teste de Chaves Ruins (SSH)”| Comando | Descrição |
|---|---|
brutus ssh --ssh-badkeys | Testar todas as chaves SSH ruins conhecidas |
| Inclui Rapid7 ssh-badkeys | Chaves privadas vazadas conhecidas |
| Inclui chave Vagrant HashiCorp | Chave insegura padrão Vagrant |
| Chaves compiladas no binário | Sem necessidade de arquivos de chave externos |
brutus ssh --ssh-badkeys --hosts-file servers.txt | Teste em lote de chaves ruins |
Segurança e Rate Limiting
Seção intitulada “Segurança e Rate Limiting”| Flag | Descrição |
|---|---|
-t 1 | Thread única (mais gentil) |
--delay 1000 | 1 segundo entre tentativas |
--max-attempts 3 | Parar após 3 falhas por host |
--lockout-threshold 5 | Parar após 5 detecções de bloqueio |
--timeout 10 | Timeout de conexão de 10 segundos |
Dicas e Boas Práticas
Seção intitulada “Dicas e Boas Práticas”| Dica | Descrição |
|---|---|
| Sempre ter autorização | Testar apenas sistemas autorizados |
| Começar com credenciais padrão | Mais eficaz para acesso inicial |
| Usar rate limiting | Evitar disparar bloqueios de conta |
| Pipar de reconhecimento | Encadear com naabu e fingerprintx |
| Usar saída JSON | Dados estruturados para relatórios |
| Testar chaves SSH ruins | Vitórias rápidas em servidores mal configurados |
| Verificar antes de força bruta | Tentar credenciais padrão e chaves ruins primeiro |
| Monitorar bloqueios | Observar respostas de bloqueio de conta |