Pular para o conteúdo

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

ComandoDescrição
go install github.com/praetorian-inc/brutus@latestInstalar via Go
Download do GitHub ReleasesBinário único pré-compilado
brutus --versionMostrar versão do Brutus
brutus --helpMostrar ajuda e comandos disponíveis
chmod +x brutusTornar binário baixado executável

Uso Básico

ComandoDescrição
brutus ssh --host 192.168.1.1Testar credenciais SSH
brutus ssh --host 192.168.1.1 -u admin -p passwords.txtSSH com usuário e wordlist
brutus mysql --host 192.168.1.1 -u rootTestar credenciais MySQL
brutus rdp --host 192.168.1.1 -u administratorTestar credenciais RDP
brutus smb --host 192.168.1.1 -u adminTestar credenciais SMB
brutus ftp --host 192.168.1.1 -u anonymousTestar credenciais FTP

Protocolos Suportados

ProtocoloDescrição
sshAutenticação Secure Shell
mysqlAutenticação de banco de dados MySQL
postgresqlAutenticação de banco de dados PostgreSQL
redisAutenticação Redis
mongodbAutenticação MongoDB
smbServer Message Block
rdpRemote Desktop Protocol
ftpFile Transfer Protocol
telnetAutenticação Telnet
vncAutenticação VNC
snmpTeste de string de comunidade SNMP
ldapAutenticação LDAP
mssqlMicrosoft SQL Server
http-basicAutenticação HTTP Basic
http-formAutenticação baseada em formulário HTTP
smtpAutenticação SMTP
pop3Autenticação de email POP3
imapAutenticação de email IMAP
cassandraAutenticação de banco de dados Cassandra
oracleAutenticação de banco de dados Oracle

Opções de Credenciais

FlagDescriçã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-credsTestar credenciais padrão comuns
--empty-passwordTestar senhas vazias
--user-as-passTestar nome de usuário como senha
--reverse-userTestar nome de usuário reverso como senha

Opções de Conexão

FlagDescriçã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

FlagDescrição
-o <file>Salvar resultados em arquivo
--jsonSaída em formato JSON
--json-prettySaída JSON formatada
--quietSuprimir saída verbosa
--verboseAumentar verbosidade de saída
--no-colorDesabilitar saída colorida
--found-onlyMostrar apenas logins bem-sucedidos

Opções Específicas de SSH

FlagDescrição
--ssh-key <file>Testar com chave privada SSH
--ssh-badkeysTestar chaves SSH ruins/padrão conhecidas
--ssh-agentUsar agente SSH para chaves
--ssh-vagrantTestar chave insegura Vagrant
--ssh-key-passphrase <pass>Passphrase para chave criptografada

Integração de Pipeline

ComandoDescrição
naabu -host 192.168.1.0/24 -p 22 -json | brutus sshPipar resultados de varredura naabu
fingerprintx -json | brutus autoAuto-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 sshPipar alvo único como JSON
brutus ssh --json -o results.jsonSalvar resultados JSON em arquivo

Uso Avançado

ComandoDescrição
brutus ssh -t 50 --delay 100Teste com taxa limitada (50 threads, atraso de 100ms)
brutus auto --hosts-file targets.txtAuto-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.txtVarredura de credenciais padrão de IoT

Teste de Credencial Padrão

ComandoDescrição
brutus ssh --default-credsTestar credenciais padrão de SSH
brutus mysql --default-credsTestar padrões MySQL (root/em branco, etc.)
brutus postgresql --default-credsTestar padrões PostgreSQL
brutus redis --default-credsTestar padrões Redis
brutus snmp --default-credsTestar strings de comunidade SNMP

Teste de Chaves Ruins (SSH)

ComandoDescrição
brutus ssh --ssh-badkeysTestar todas as chaves SSH ruins conhecidas
Inclui Rapid7 ssh-badkeysChaves privadas vazadas conhecidas
Inclui chave Vagrant HashiCorpChave insegura padrão Vagrant
Chaves compiladas no binárioSem necessidade de arquivos de chave externos
brutus ssh --ssh-badkeys --hosts-file servers.txtTeste em lote de chaves ruins

Segurança e Rate Limiting

FlagDescrição
-t 1Thread única (mais gentil)
--delay 10001 segundo entre tentativas
--max-attempts 3Parar após 3 falhas por host
--lockout-threshold 5Parar após 5 detecções de bloqueio
--timeout 10Timeout de conexão de 10 segundos

Dicas e Boas Práticas

DicaDescrição
Sempre ter autorizaçãoTestar apenas sistemas autorizados
Começar com credenciais padrãoMais eficaz para acesso inicial
Usar rate limitingEvitar disparar bloqueios de conta
Pipar de reconhecimentoEncadear com naabu e fingerprintx
Usar saída JSONDados estruturados para relatórios
Testar chaves SSH ruinsVitórias rápidas em servidores mal configurados
Verificar antes de força brutaTentar credenciais padrão e chaves ruins primeiro
Monitorar bloqueiosObservar respostas de bloqueio de conta