
brutus v1.15.0
أداة سريعة لاختبار بيانات الاعتماد بدون تبعيات في لغة Go. اختراق SSH وMySQL وPostgreSQL وRedis وMongoDB وSMB وأكثر من 20 بروتوكولاً. بديل لـ Hydra مع تكامل سلس مع خط أنابيب nerva/naabu.
Brutus
"Et tu, Brute?" — الكلمات الأخيرة قبل سقوط بيانات الاعتماد.
أداة اختبار بيانات اعتماد حديثة مكتوبة بلغة Go الخالصة
التثبيت • البدء السريع • خط الأنابيب • البروتوكولات • تعداد الحسابات • الوكيل • المكتبة
نظرة عامة
Brutus هي أداة اختبار مصادقة متعددة البروتوكولات مصممة لمعالجة فجوة حرجة في أدوات الأمن الهجومي: التحقق الفعّال من بيانات الاعتماد عبر خدمات شبكية متنوعة. في حين أن الأدوات التي تركز على HTTP متوفرة بكثرة، فإن مختبري الاختراق ومشغلي الفرق الحمراء يواجهون بشكل متكرر قواعد البيانات وSSH وSMB وغيرها من الخدمات الشبكية التي تتطلب قدرات اختبار مصادقة مصممة خصيصًا.
بُنيت بلغة Go كملف تنفيذي واحد بدون أي تبعيات خارجية، ويتكامل Brutus بسلاسة مع Nerva لاكتشاف الخدمات تلقائيًا، مما يمكّن المشغلين من تحديد واختبار نواقل المصادقة بسرعة عبر نطاقات شبكية كاملة.
الميزات الرئيسية:
- بدون تبعيات: ملف تنفيذي واحد، متعدد المنصات (Linux، Windows، macOS)
- 43 بروتوكولًا: SSH، RDP، MySQL، PostgreSQL، MSSQL، Oracle، Redis، SMB، LDAP، WinRM، SNMP، HTTP Basic Auth، MQTT، والمزيد
- دعم وكيل 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. ابنِ أتمتة مخصصة دون اللجوء إلى عمليات خارجية.
# 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
حالات الاستخدام
اختبار الاختراق
- التحقق من صحة بيانات الاعتماد المكتشفة عبر خدمات متعددة أثناء التقييمات الداخلية
- اختبار أنماط إعادة استخدام كلمات المرور عبر خدمات قواعد البيانات ومشاركة الملفات
- تحديد بيانات الاعتماد الافتراضية على البنية التحتية المنشورة حديثًا
عمليات الفريق الأحمر
- التحقق السريع من صحة بيانات الاعتماد بعد تسريبات كلمات المرور أو حملات التصيد الاحتيالي
- اختبار فرص الحركة الجانبية عبر خدمات الشبكة
- التحقق من صحة بيانات الاعتماد المخترقة عبر بيئات غير متجانسة
رش المفاتيح الخاصة
هل وجدت مفتاحًا خاصًا على نظام مخترق؟ انشره عبر الشبكة لمعرفة أين يمنح الوصول أيضًا:
# 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 واختبر بيانات الاعتماد باستخدام الكشف المدعوم بالذكاء الاصطناعي أو قوائم بيانات الاعتماد اليدوية:
# 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:
# 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/
# 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
go install github.com/praetorian-inc/brutus/cmd/brutus@latest
بدء سريع
الأوامر الفرعية
ينظّم Brutus وظائفه في هذه الأوامر الفرعية المتخصصة:
brutus badkeys # Test known weak/compromised SSH keys against targets
brutus creds # Test default credentials on non-HTTP services (SSH, databases, SMB, etc.)
brutus enum # Enumerate accounts against account-existence oracles or Active Directory
brutus logon # Detect Windows logon-screen backdoors (runs both sticky keys and utilman)
brutus snmp # Test SNMP community strings against targets
brutus stickykeys # Detect the Windows sticky-keys (sethc.exe) logon backdoor only
brutus template # Run product-specific default-credential templates
brutus utilman # Detect the Windows utilman (Ease of Access) logon backdoor only
brutus web # Audit HTTP/web panel credentials (AI-powered or credential list)
تحمل بعض الأوامر الفرعية أسماء مستعارة لسهولة الاكتشاف:
| الأمر الفرعي | الأسماء المستعارة |
|---|---|
badkeys | keys, ssh-keys, badkey |
creds | services, defaults, credentials |
snmp | community |
web | http, panels |
المرجع الكامل — كل أمر فرعي واسم مستعار وعلم، بما في ذلك تلك المخفية من --help — مُولَّد في docs/CLI.md.
# Test SSH credentials
brutus creds --target 192.168.1.100:22 --protocol ssh -u root -p toor