
brutus v1.11.0
Outil de test d'identifiants rapide et sans dépendances en Go. Force brute sur SSH, MySQL, PostgreSQL, Redis, MongoDB, SMB et plus de 20 protocoles. Alternative à Hydra avec intégration native du pipeline nerva/naabu.
Brutus
"Et tu, Brute?" — Les derniers mots avant la chute des identifiants.
Outil moderne de test d'authentification en Go pur
Installation • Démarrage rapide • Pipeline • Protocoles • Énumération • Proxy • Bibliothèque
Présentation
Brutus est un outil de test d'authentification multi-protocole conçu pour combler une lacune critique dans les outils offensifs de sécurité : la validation efficace des identifiants sur divers services réseau. Alors que les outils orientés HTTP sont abondants, les testeurs d'intrusion et les opérateurs red team rencontrent fréquemment des bases de données, SSH, SMB et d'autres services réseau qui nécessitent des capacités de test d'authentification spécialisées.
Construit en Go sous forme d'un binaire unique sans dépendances externes, Brutus s'intègre parfaitement avec Nerva pour la découverte automatisée de services, permettant aux opérateurs d'identifier et de tester rapidement les vecteurs d'authentification sur des plages réseau entières.
Fonctionnalités clés :
- Zéro dépendance : Binaire unique, multiplateforme (Linux, Windows, macOS)
- 27 protocoles : SSH, RDP, MySQL, PostgreSQL, MSSQL, Oracle, Redis, SMB, LDAP, WinRM, SNMP, HTTP Basic Auth, et plus
- Support proxy SOCKS5 : Routage de tout le trafic via un proxy SOCKS5 avec
--proxy - Modes d'agressivité :
--mode cautious|default|aggressivepour ajuster la couverture par rapport à la sécurité - Intégration pipeline : Support natif des workflows Nerva, naabu, nmap et masscan
- Clés compromises intégrées : Collection intégrée de clés SSH connues (Vagrant, F5, ExaGrid, etc.)
- Énumération de comptes : Oracle d'existence de comptes, énumération d'utilisateurs Kerberos, génération d'emails, authentification par code d'appareil Microsoft Teams/Entra ID
- Bibliothèque Go : Importez directement dans vos outils d'automatisation de sécurité
- Prêt pour la production : Limitation de débit, pooling de connexions et gestion complète des erreurs
Pourquoi Brutus ?
Les outils traditionnels comme THC Hydra ont bien servi la communauté de la sécurité, mais ils présentent des frictions importantes : chaînes de dépendances complexes, problèmes de compilation spécifiques à la plateforme, et absence d'intégration native avec les workflows de reconnaissance modernes.
Brutus est spécialement conçu pour la sécurité offensive moderne :
-
Déploiement vraiment sans dépendance : Téléchargez un seul binaire et exécutez-le. Pas de
libssh-dev, pas delibmysqlclient-dev, pas d'erreurs de compilation. Fonctionne à l'identique sur Linux, macOS et Windows. -
Intégration pipeline native : Brutus parle JSON et s'intègre directement avec Nerva, naabu, nmap et masscan. Envoyez les services découverts directement dans les tests d'authentification sans conversion de format ni script.
-
Intelligence embarquée : Les clés SSH compromises connues (Vagrant, F5 BIG-IP, ExaGrid, etc.) sont compilées dans le binaire. Utilisez
brutus badkeyspour les tester contre des cibles SSH. -
Conception orientée bibliothèque : Importez Brutus directement dans vos outils de sécurité Go. Construisez des automatisations personnalisées sans avoir à appeler des processus externes.```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
---
## Cas d'utilisation
### Tests de pénétration
- Valider les identifiants découverts sur plusieurs services lors d'évaluations internes
- Tester les schémas de réutilisation de mots de passe sur les services de base de données et de partage de fichiers
- Identifier les identifiants par défaut sur une infrastructure nouvellement déployée
### Opérations d'équipe rouge
- Validation rapide des identifiants après des fuites de mots de passe ou des campagnes de phishing
- Tester les opportunités de mouvement latéral à travers les services réseau
- Valider les identifiants compromis dans des environnements hétérogènes
### Pulvérisation de clés privées
Vous avez trouvé une clé privée sur un système compromis ? Pulvérisez-la sur le réseau pour découvrir où elle accorde également l'accès :```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
Cette pipeline découvre tous les services SSH, les identifie avec Nerva, et teste la clé compromise contre des noms d'utilisateur courants — révélant les opportunités de mouvement latéral en quelques secondes.
Test du panneau d'administration web
Découvrez les services HTTP et testez les identifiants à l'aide de la détection alimentée par l'IA ou de listes d'identifiants manuelles :```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
### Validation de la sécurité
- Tester les identifiants par défaut sur les services nouvellement déployés
- Valider l'application de la politique de mots de passe sur toutes les plates-formes
- Générer des pistes d'audit pour les évaluations de conformité et de sécurité
---
## Installation
### Binaires précompilés (Recommandé)
Télécharger depuis [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/
Please provide the Markdown content to translate.```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
### Installation de Go```bash
go install github.com/praetorian-inc/brutus/cmd/brutus@latest