
brutus v1.11.0
Schnelles, abhängigkeitsfreies Credential-Testing-Tool in Go. Brute Force für SSH, MySQL, PostgreSQL, Redis, MongoDB, SMB und 20+ Protokolle. Hydra-Alternative mit nativer nerva/naabu-Pipeline-Integration.
Brutus
"Et tu, Brute?" — Die letzten Worte, bevor Zugangsdaten fallen.
Modernes Tool zum Testen von Anmeldedaten in reinem Go
Installation • Schnellstart • Pipeline • Protokolle • Enumeration • Proxy • Bibliothek
Überblick
Brutus ist ein Multi-Protokoll-Authentifizierungstestwerkzeug, das entwickelt wurde, um eine kritische Lücke in der Offensiv-Sicherheitswerkzeuglandschaft zu schließen: effiziente Validierung von Anmeldedaten über verschiedene Netzwerkdienste hinweg. Während HTTP-fokussierte Werkzeuge reichlich vorhanden sind, stoßen Penetrationstester und Red-Team-Operatoren häufig auf Datenbanken, SSH, SMB und andere Netzwerkdienste, die speziell entwickelte Authentifizierungstestfunktionen erfordern.
In Go als einzelne Binärdatei ohne externe Abhängigkeiten gebaut, integriert sich Brutus nahtlos mit Nerva für die automatisierte Dienstfindung, sodass Betreiber schnell Authentifizierungsvektoren über ganze Netzwerkbereiche identifizieren und testen können.
Hauptfunktionen:
- Keine Abhängigkeiten: Einzelne Binärdatei, plattformübergreifend (Linux, Windows, macOS)
- 27 Protokolle: SSH, RDP, MySQL, PostgreSQL, MSSQL, Oracle, Redis, SMB, LDAP, WinRM, SNMP, HTTP Basic Auth und mehr
- SOCKS5-Proxy-Unterstützung: Leite den gesamten Datenverkehr über einen SOCKS5-Proxy mit
--proxy - Aggressivitätsmodi:
--mode cautious|default|aggressivezur Abstimmung von Abdeckung vs. Sicherheit - Pipeline-Integration: Native Unterstützung für Nerva, naabu, nmap und masscan Workflows
- Eingebettete schlechte Schlüssel: Integrierte Sammlung bekannter SSH-Schlüssel (Vagrant, F5, ExaGrid, usw.)
- Konto-Enumeration: Kontoexistenz-Orakel-Enumeration, Kerberos-Benutzer-Enumeration, E-Mail-Generierung, Microsoft Teams/Entra ID Gerätecode-Authentifizierung
- Go-Bibliothek: Direkt in Ihre Sicherheitsautomatisierungswerkzeuge importieren
- Produktionsreif: Ratenbegrenzung, Verbindungspooling und umfassende Fehlerbehandlung
Warum Brutus?
Traditionelle Werkzeuge wie THC Hydra haben der Sicherheitsgemeinschaft gute Dienste geleistet, aber sie bringen erhebliche Reibung mit sich: komplexe Abhängigkeitsketten, plattformspezifische Kompilierungsprobleme und keine native Integration mit modernen Erkundungs-Workflows.
Brutus ist speziell für moderne offensive Sicherheit konzipiert:
-
Echte Null-Abhängigkeits-Bereitstellung: Laden Sie eine einzelne Binärdatei herunter und führen Sie sie aus. Kein
libssh-dev, keinlibmysqlclient-dev, keine Kompilierungsfehler. Funktioniert identisch auf Linux, macOS und Windows. -
Native Pipeline-Integration: Brutus spricht JSON und integriert sich direkt mit Nerva, naabu, nmap und masscan. Leiten Sie entdeckte Dienste direkt in die Anmeldedatentests ohne Formatkonvertierung oder Skripterstellung.
-
Eingebettete Intelligenz: Bekannte schlechte SSH-Schlüssel (Vagrant, F5 BIG-IP, ExaGrid, usw.) sind in die Binärdatei kompiliert. Verwenden Sie
brutus badkeys, um sie gegen SSH-Ziele zu testen. -
Bibliothek-zuerst-Design: Importieren Sie Brutus direkt in Ihre Go-Sicherheitswerkzeuge. Erstellen Sie benutzerdefinierte Automatisierung ohne Auslagerung an externe Prozesse.```bash
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
---
## Anwendungsfälle
### Penetrationstests
- Entdeckte Anmeldeinformationen während interner Bewertungen über mehrere Dienste hinweg validieren
- Muster der Passwortwiederverwendung über Datenbank- und Dateifreigabedienste testen
- Standard-Anmeldeinformationen auf neu bereitgestellter Infrastruktur identifizieren
### Red-Team-Operationen
- Schnelle Validierung von Anmeldeinformationen nach Passwort-Leaks oder Phishing-Kampagnen
- Möglichkeiten der lateralen Bewegung über Netzwerkdienste testen
- Kompromittierte Anmeldeinformationen über heterogene Umgebungen hinweg validieren
### Spraying von privaten Schlüsseln
Haben Sie einen privaten Schlüssel auf einem kompromittierten System gefunden? Sprayen Sie ihn über das Netzwerk, um herauszufinden, wo er sonst noch Zugriff gewährt:```bash
# 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
This pipeline discovers all SSH services, identifies them with Nerva, and tests the compromised key against common usernames—revealing lateral movement opportunities in seconds.
Test von Web-Admin-Panels
Entdecken Sie HTTP-Dienste und testen Sie Anmeldedaten mithilfe von KI-gestützter Erkennung oder manuellen Anmeldedatenlisten:```bash
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
### Sicherheitsvalidierung
- Testen Sie Standard-Anmeldedaten auf neu bereitgestellten Diensten
- Überprüfen Sie die Durchsetzung von Passwortrichtlinien auf allen Plattformen
- Erstellen Sie Prüfpfade für Compliance- und Sicherheitsbewertungen
---
## Installation
### Vorgefertigte Binärdateien (Empfohlen)
Download from [GitHub Releases](https://github.com/praetorian-inc/brutus/releases):```bash
# 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/
INPUT:```powershell
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
### Go Installation```bash
go install github.com/praetorian-inc/brutus/cmd/brutus@latest