Comandi completi di Brutus, strumento di test delle credenziali multi-protocollo per il penetration testing e le valutazioni della sicurezza.
| Comando | Descrizione |
|---|
go install github.com/praetorian-inc/brutus@latest | Installa tramite Go |
| Scarica da GitHub Releases | Binario singolo precompilato |
brutus --version | Mostra la versione di Brutus |
brutus --help | Mostra la guida e i comandi disponibili |
chmod +x brutus | Rendi il binario scaricato eseguibile |
| Comando | Descrizione |
|---|
brutus ssh --host 192.168.1.1 | Test delle credenziali SSH |
brutus ssh --host 192.168.1.1 -u admin -p passwords.txt | SSH con utente e wordlist |
brutus mysql --host 192.168.1.1 -u root | Test delle credenziali MySQL |
brutus rdp --host 192.168.1.1 -u administrator | Test delle credenziali RDP |
brutus smb --host 192.168.1.1 -u admin | Test delle credenziali SMB |
brutus ftp --host 192.168.1.1 -u anonymous | Test delle credenziali FTP |
| Protocollo | Descrizione |
|---|
ssh | Autenticazione Secure Shell |
mysql | Autenticazione del database MySQL |
postgresql | Autenticazione del database PostgreSQL |
redis | Autenticazione di Redis |
mongodb | Autenticazione di MongoDB |
smb | Server Message Block |
rdp | Remote Desktop Protocol |
ftp | File Transfer Protocol |
telnet | Autenticazione Telnet |
vnc | Autenticazione VNC |
snmp | Test della stringa della comunità SNMP |
ldap | Autenticazione LDAP |
mssql | Microsoft SQL Server |
http-basic | Autenticazione HTTP Basic |
http-form | Autenticazione basata su form HTTP |
smtp | Autenticazione SMTP |
pop3 | Autenticazione di posta POP3 |
imap | Autenticazione di posta IMAP |
cassandra | Autenticazione del database Cassandra |
oracle | Autenticazione del database Oracle |
| Flag | Descrizione |
|---|
-u <user> | Nome utente singolo |
-U <file> | File della wordlist di nomi utente |
-p <pass> | Password singola |
-P <file> | File della wordlist di password |
-C <file> | File combo (user:pass per riga) |
--default-creds | Test delle credenziali predefinite comuni |
--empty-password | Test delle password vuote |
--user-as-pass | Test il nome utente come password |
--reverse-user | Test il nome utente invertito come password |
| Flag | Descrizione |
|---|
--host <ip> | IP o nome host del target |
--port <port> | Porta personalizzata (sostituisce il valore predefinito) |
--hosts-file <file> | File con l’elenco dei target |
-t <threads> | Numero di thread concorrenti |
--timeout <seconds> | Timeout di connessione per tentativo |
--delay <ms> | Ritardo tra i tentativi |
--retry <count> | Numero di tentativi in caso di errore |
--proxy <url> | Instrada tramite un proxy |
| Flag | Descrizione |
|---|
-o <file> | Esporta i risultati su file |
--json | Esporta in formato JSON |
--json-pretty | Output JSON con formattazione |
--quiet | Sopprime l’output dettagliato |
--verbose | Aumenta la verbosità dell’output |
--no-color | Disabilita l’output colorato |
--found-only | Mostra solo i login riusciti |
| Flag | Descrizione |
|---|
--ssh-key <file> | Test con chiave privata SSH |
--ssh-badkeys | Test delle chiavi SSH cattive/predefinite conosciute |
--ssh-agent | Usa l’agente SSH per le chiavi |
--ssh-vagrant | Test della chiave insicura Vagrant |
--ssh-key-passphrase <pass> | Passphrase per la chiave crittografata |
| Comando | Descrizione |
|---|
naabu -host 192.168.1.0/24 -p 22 -json | brutus ssh | Pipe dei risultati della scansione di porta naabu |
fingerprintx -json | brutus auto | Rilevamento automatico del protocollo dall’impronta |
brutus ssh --json | jq '.[] | select(.success)' | Filtra i login riusciti con jq |
echo '{"host":"192.168.1.1","port":22}' | brutus ssh | Pipe il target singolo come JSON |
brutus ssh --json -o results.json | Salva i risultati JSON su file |
| Comando | Descrizione |
|---|
brutus ssh -t 50 --delay 100 | Test con rate limit (50 thread, ritardo di 100ms) |
brutus auto --hosts-file targets.txt | Rilevamento e test automatico di più target |
brutus http-form --url <url> --form-data "user=^USER^&pass=^PASS^" | Brute force del form HTTP |
brutus http-basic --url <url> | Test dell’autenticazione HTTP Basic |
brutus ssh --default-creds --hosts-file iot-devices.txt | Scansione delle credenziali predefinite IoT |
| Comando | Descrizione |
|---|
brutus ssh --default-creds | Test delle credenziali SSH predefinite |
brutus mysql --default-creds | Test dei valori predefiniti MySQL (root/blank, ecc.) |
brutus postgresql --default-creds | Test dei valori predefiniti PostgreSQL |
brutus redis --default-creds | Test dei valori predefiniti Redis |
brutus snmp --default-creds | Test delle stringhe della comunità SNMP |
| Comando | Descrizione |
|---|
brutus ssh --ssh-badkeys | Test di tutte le chiavi SSH cattive conosciute |
| Includi le chiavi Rapid7 ssh-badkeys | Chiavi private trapelate conosciute |
| Includi la chiave Vagrant di HashiCorp | Chiave insicura Vagrant predefinita |
| Chiavi compilate nel binario | Nessun file di chiave esterno necessario |
brutus ssh --ssh-badkeys --hosts-file servers.txt | Test batch delle chiavi cattive |
| Flag | Descrizione |
|---|
-t 1 | Thread singolo (più gentile) |
--delay 1000 | 1 secondo tra i tentativi |
--max-attempts 3 | Arresta dopo 3 errori per host |
--lockout-threshold 5 | Arresta dopo 5 rilevamenti di blocco |
--timeout 10 | Timeout di connessione di 10 secondi |
| Suggerimento | Descrizione |
|---|
| Hai sempre l’autorizzazione | Testa solo i sistemi per cui sei autorizzato |
| Inizia con le credenziali predefinite | Più efficace per l’accesso iniziale |
| Usa il rate limiting | Evita di attivare i blocchi dell’account |
| Pipe dai ricognizione | Catena con naabu e fingerprintx |
| Usa l’output JSON | Dati strutturati per il reporting |
| Test delle chiavi SSH cattive | Vittorie rapide sui server mal configurati |
| Controlla prima del brute force | Prova le credenziali predefinite e le chiavi cattive prima |
| Monitora i blocchi | Osserva le risposte di blocco dell’account |