
brutus v1.11.0
أداة سريعة لاختبار بيانات الاعتماد بدون تبعيات في لغة Go. اختراق SSH وMySQL وPostgreSQL وRedis وMongoDB وSMB وأكثر من 20 بروتوكولاً. بديل لـ Hydra مع تكامل سلس مع خط أنابيب nerva/naabu.
Brutus
"وأنت يا بروتوس؟" — الكلمات الأخيرة قبل سقوط بيانات الاعتماد.
أداة اختبار حديثة لبيانات الاعتماد بلغة Go النقية
التثبيت • البداية السريعة • الأنابيب • البروتوكولات • التعداد • الوكيل • المكتبة
نظرة عامة
Brutus هي أداة اختبار مصادقة متعددة البروتوكولات صُممت لسد فجوة حرجة في أدوات الهجوم السيبراني: التحقق الفعال من صحة بيانات الاعتماد عبر خدمات الشبكة المتنوعة. بينما توجد أدوات كثيرة تركز على HTTP، فإن مختبري الاختراق وفرق العمليات الحمراء غالبًا ما يواجهون قواعد البيانات، SSH، SMB، وخدمات شبكة أخرى تتطلب إمكانيات اختبار مصادقة مصممة خصيصًا.
مبنية بلغة Go كملف ثنائي واحد بدون أي تبعيات خارجية، تتكامل Brutus بسلاسة مع Nerva لاكتشاف الخدمات تلقائيًا، مما يمكن المشغلين من تحديد واختبار ناقلات المصادقة بسرعة عبر نطاقات شبكة كاملة.
الميزات الرئيسية:
- بدون تبعيات: ملف ثنائي واحد، عبر المنصات (Linux، Windows، macOS)
- 27 بروتوكولاً: SSH، RDP، MySQL، PostgreSQL، MSSQL، Oracle، Redis، SMB، LDAP، WinRM، SNMP، HTTP Basic Auth، وغيرها
- دعم وكيل SOCKS5: توجيه كل الحركة عبر وكيل SOCKS5 باستخدام
--proxy - أوضاع العدوانية:
--mode cautious|default|aggressiveلضبط التغطية مقابل الأمان - دمج مع الأنابيب: دعم أصلي لسير عمل Nerva وnaabu وnmap وmasscan
- مفاتيح مضمنة خبيثة: مجموعة مدمجة من مفاتيح SSH المعروفة (Vagrant، F5، ExaGrid، إلخ)
- تعداد الحسابات: تعداد وجود الحسابات عن طريق المرشد، تعداد مستخدمي Kerberos، توليد البريد الإلكتروني، مصادقة رمز جهاز Microsoft Teams/Entra ID
- مكتبة Go: استيراد مباشر إلى أدوات الأتمتة الأمنية الخاصة بك
- جاهز للإنتاج: تحديد معدل، تجميع الاتصالات، ومعالجة أخطاء شاملة
لماذا Brutus؟
الأدوات التقليدية مثل THC Hydra خدمت مجتمع الأمان جيدًا، لكنها تأتي مع احتكاك كبير: سلاسل تبعيات معقدة، مشكلات تجميع خاصة بالمنصة، وعدم وجود تكامل أصلي مع سير العمل الحديث للاستطلاع.
Brutus صُمم خصيصًا للأمن الهجومي الحديث:
-
نشر حقيقي بدون تبعيات: حمل ملفًا ثنائيًا واحدًا وشغله. لا حاجة لـ
libssh-dev، لاlibmysqlclient-dev، ولا أخطاء تجميع. يعمل بنفس الطريقة على Linux وmacOS وWindows. -
تكامل أصلي مع الأنابيب: Brutus يتحدث JSON ويتكامل مباشرة مع Nerva وnaabu وnmap وmasscan. أرسل الخدمات المكتشفة مباشرة إلى اختبار بيانات الاعتماد دون تحويل التنسيق أو كتابة سكريبتات.
-
ذكاء مضمن: مفاتيح SSH الخبيثة المعروفة (Vagrant، F5 BIG-IP، ExaGrid، إلخ) مضمنة في الملف الثنائي. استخدم
brutus badkeysلاختبارها ضد أهداف SSH. -
تصميم يركز على المكتبة: استورد Brutus مباشرة في أدوات الأمان بلغة Go الخاصة بك. ابنِ أتمتة مخصصة دون الحاجة إلى استدعاء عمليات خارجية.```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
---
## حالات الاستخدام
### اختبار الاختراق
- التحقق من صحة بيانات الاعتماد المكتشفة عبر خدمات متعددة أثناء التقييمات الداخلية
- اختبار أنماط إعادة استخدام كلمات المرور عبر خدمات قواعد البيانات ومشاركة الملفات
- تحديد بيانات الاعتماد الافتراضية على البنية التحتية المنشورة حديثًا
### عمليات الفريق الأحمر
- التحقق السريع من صحة بيانات الاعتماد بعد تفريغ كلمات المرور أو حملات التصيد
- اختبار فرص الحركة الجانبية عبر خدمات الشبكة
- التحقق من صحة بيانات الاعتماد المخترقة عبر بيئات غير متجانسة
### رش المفاتيح الخاصة
هل وجدت مفتاحًا خاصًا على نظام مخترق؟ قم برشه عبر الشبكة لتعرف أين يمنح وصولًا أيضًا:```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
يكتشف هذا الخط الأنابيب جميع خدمات SSH، ويحددها باستخدام Nerva، ويختبر المفتاح المخترق مقابل أسماء المستخدمين الشائعة—مما يكشف عن فرص الحركة الجانبية في ثوانٍ.
اختبار لوحة الإدارة على الويب
اكتشف خدمات HTTP واختبر بيانات الاعتماد باستخدام الكشف المدعوم بالذكاء الاصطناعي أو قوائم بيانات الاعتماد اليدوية:```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
### التحقق الأمني
- اختبار بيانات الاعتماد الافتراضية على الخدمات المنشورة حديثًا
- التحقق من تطبيق سياسة كلمة المرور عبر المنصات
- إنشاء سجلات تدقيق لتقييم الامتثال والأمان
---
## التثبيت
### الملفات الثنائية الجاهزة (موصى بها)
تنزيل من [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/
- الأوامر الفرعية:
completions: إنشاء إكمالات الصدفةgenerate: إنشاء خطاف جديد واستلام رابط تحميل له.shell: عكس شِل عبر TCPbinary: عكس شِل عبر TCP (ثنائي، مُجرّد، ومضغوط بـ UPX لأنظمة *nix)http: عكس شِل عبر HTTPwebsocket: عكس شِل عبر WebSocket
serve: بدء خادم الاستماع ومعالجة الاتصالات الواردة.update-os: تحديث نظام تشغيل الخادم (عند تشغيله عبر Docker).upgrade: ترقية مثيل GoPHish ونظام تشغيل الخادم (عند تشغيله عبر Docker).```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```bash
go install github.com/praetorian-inc/brutus/cmd/brutus@latest
بداية سريعة
الأوامر الفرعية
ينظم بروتوس وظائفه في ستة أوامر فرعية مركزة:```bash brutus creds # Non-HTTP credential auditing (SSH, databases, SMB, etc.) brutus web # HTTP/web panel auditing (Basic Auth, form login, AI-powered) brutus snmp # SNMP community string testing brutus badkeys # Known weak/compromised SSH key testing brutus logon # Windows logon-screen backdoor detection (sticky keys, utilman) brutus enum # Account enumeration (account-existence oracles, Kerberos, Teams auth, email generation)
كل أمر فرعي له أسماء مستعارة لسهولة الاكتشاف:
| الأمر الفرعي | الأسماء المستعارة |
|------------|---------|
| `creds` | `services`, `defaults`, `credentials` |
| `web` | `http`, `panels` |
| `snmp` | `community` |
| `badkeys` | `keys`, `ssh-keys`, `badkey` |
| `logon` | `stickykeys`, `sticky-keys`, `utilman`, `sethc`, `winlogon`, `accessibility` |
| `enum` | *(لا يوجد)* |```bash
# Test SSH credentials
brutus creds --target 192.168.1.100:22 --protocol ssh -u root -p toor
# Test HTTP web panel with AI credential detection
brutus web --target 192.168.1.1:80 --experimental-ai