Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
BloodBash — محلل مسارات الهجوم دون اتصال لـ AD/Entra لملفات SharpHound/AzureHound بصيغة JSON. يعرض نتائج تصعيد الامتيازات، والاعتمادات، وسوء التهيئة مرتبة حسب الأولوية دون الحاجة إلى BloodHound أو Neo4j. | Kitploit
أدوات/GitHubGitHub/squidsec/bloodbash
تصعيد الامتيازاتتحليل الثغرات الأمنيةالحركة الجانبيةتدقيق التكوينجمع المعلوماتاختبار الاختراقأمن السحابةإدارة الهوية والوصول (IAM)الفريق الأحمر
GitHubsquidsec/bloodbash

BloodBash

محلل مسارات الهجوم دون اتصال لـ AD/Entra لملفات SharpHound/AzureHound بصيغة JSON. يعرض نتائج تصعيد الامتيازات، والاعتمادات، وسوء التهيئة مرتبة حسب الأولوية دون الحاجة إلى BloodHound أو Neo4j.

4064927منذ 2 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

BloodBash

SquidSec logo

مشروع مفتوح المصدر من SquidSec
SquidOffense.com · GitHub

Run Unit Tests Build and Release Binaries Latest release License: MIT

BloodBash هو محلل JSON مفتوح المصدر وغير متصل بالإنترنت لبيانات SharpHound وAzureHound، تم إنشاؤه وإدارته بواسطة SquidSec. يبني رسمًا بيانيًا، ويكشف مسارات الهجوم وسوء الإعدادات في AD/Entra، ويعرض النتائج مرتبة حسب الأولوية. لا حاجة إلى Neo4j أو واجهة BloodHound.

عمليات الدمج إلى main تبني تلقائيًا ملفات تنفيذية لـ Linux وWindows وتنشر إصدار GitHub (الوسم v1.4.2-build.N).


حول SquidSec

تم تطوير وصيانة BloodBash بواسطة SquidSec من أجل مجتمع الأمن - مختصو الفريق الأحمر، ومختبرو الاختراق، والمدافعون الذين يحتاجون إلى تحليل سريع دون اتصال لـ AD/Entra دون إعداد بنية BloodHound التحتية.

  • الموقع الإلكتروني: https://squidoffense.com/
  • المشروع: https://github.com/DotNetRussell/BloodBash

التحميل (بدون الحاجة إلى Python)

ملفات تنفيذية مستقلة لـ SquidSec BloodBash - لا حاجة إلى Python أو pip أو venv:

النظام الأساسيأحدث إصدار للتحميل
Linux x64bloodbash-linux-x64
Windows x64bloodbash-windows-x64.exe
  • جميع الإصدارات ووسوم الإصدارات: https://github.com/DotNetRussell/BloodBash/releases
  • صفحة أحدث إصدار: https://github.com/DotNetRussell/BloodBash/releases/latest```bash

Linux

curl -sL -o bloodbash
https://github.com/DotNetRussell/BloodBash/releases/latest/download/bloodbash-linux-x64 chmod +x bloodbash ./bloodbash /path/to/json --all

root@kitploit:~
MITRE ATT&CK [1] - تقنيات الهجوم وسيناريوهات التهديد المستخدمة من قبل الجهات الفاعلة في التهديدات الإلكترونية.

## ✨ الميزات

- **🗂️ تحليل الملفات**: تحليل الملفات لتحديد المحتوى الضار باستخدام تقنيات YARA والمحتوى.
- **🕵️ تحليل الشبكة**: التقاط وتحليل حركة مرور الشبكة لتحديد الأنشطة الضارة.
- **🔍 تحليل الذاكرة**: تحليل الذاكرة للكشف عن البرمجيات الخبيثة والتهديدات المخفية.
- **📊 إعداد التقارير**: إنشاء تقارير مفصلة حول نتائج التحليل.
- **🛠️ التخصيص**: خيارات تخصيص لضبط سلوك الأداة.
- **🤖 وضع التفاعل**: أوضاع تفاعلية للتحليل في الوقت الفعلي.
- **🧩 التكامل**: التكامل مع أدوات الأمان الأخرى لتحسين الكشف.

## 📥 التثبيت

لتثبيت **Malware Analysis Tool**، اتبع الخطوات التالية:

```bash
git clone https://github.com/yourusername/Malware-Analysis-Tool.git
cd Malware-Analysis-Tool
pip install -r requirements.txt

🚀 الاستخدام

لاستخدام Malware Analysis Tool، اتبع الأمثلة التالية:

root@kitploit:~
python malware_analysis_tool.py --help

تحليل ملف

root@kitploit:~
python malware_analysis_tool.py --file /path/to/malware/file

تحليل الشبكة

root@kitploit:~
python malware_analysis_tool.py --network --interface eth0

تحليل الذاكرة

root@kitploit:~
python malware_analysis_tool.py --memory --pid 1234

توليد تقرير

root@kitploit:~
python malware_analysis_tool.py --file /path/to/malware/file --report /path/to/report

📚 الوثائق

للحصول على وثائق مفصلة، يرجى الرجوع إلى الدليل.```powershell

Windows (PowerShell)

Invoke-WebRequest -Uri "https://github.com/DotNetRussell/BloodBash/releases/latest/download/bloodbash-windows-x64.exe" ` -OutFile bloodbash.exe .\bloodbash.exe C:\path\to\json --all

root@kitploit:~
## التثبيت (Python / المصدر)```bash
pipx install git+https://github.com/DotNetRussell/BloodBash

أو من استنساخ:```bash git clone https://github.com/DotNetRussell/BloodBash.git cd BloodBash python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt

root@kitploit:~
التبعيات: `networkx`, `rich`, `tqdm`, `pyyaml`.

## البدء السريع

**ابدأ بهذه الثلاثة** (أشر إلى مجلد SharpHound/AzureHound أو ملف `.zip`):```bash
# 1) Day-0 triage - default when you pass only the data path
bloodbash /path/to/json
# same as:
bloodbash /path/to/json --quick-wins

# 2) Just owned a user - outbound compromise dossier
bloodbash ./sharpout --from-user alice --from-user-export

# 3) Full attack analysis (large env: --fast auto on big graphs)
bloodbash /path/to/json --all --fast
# inventory ladders still opt-in:
bloodbash /path/to/json --all --inventory

من نسخة مستخرجة من المصدر، يكون python3 BloodBash.py معادلاً لـ bloodbash.```bash

Binary / pipx

./bloodbash /path/to/json bloodbash /path/to/json --from-user alice --from-user-export

Multi-collection merge (low-priv + DA zip, multi-domain forest)

bloodbash ./lowpriv.zip --merge ./da.zip ./child-domain.zip --all --fast

root@kitploit:~
الدليل الأصلي (بدون علامات فحص) يشغّل فرز **النتائج السريعة**. استخدم `--all` للتحليل الكامل لمسار الهجوم (وليس الجرد)، أو `--wizard` لاختيار تفاعلي.

في وضعي `--all` و`--quick-wins`، يتم إخفاء أقسام المكتشفات الفارغة لتبقى وحدة التحكم مقروءة. العلامات الانتقائية ما زالت تطبع أسطر "لا توجد نتائج" باللون الأخضر للفحوصات التي طلبتها.

بيانات تجريبية: `SampleSharphoundADData/` و`SampleAzurehoundData/`.```bash
bloodbash --help            # start-here + cheat sheet
bloodbash --help-advanced   # full flag tables + all examples

مزيد من الوصفات: docs/cookbook.md.

ما يكتشفه

يتم تسجيل النتائج وتلخيصها في جدول النتائج ذات الأولوية (تندمج فئات النظافة العامة عالية الحجم؛ استخدم --all-findings للحصول على القائمة الكاملة المدمجة). تقترح لوحات الاستغلال أدوات/أوامر لكل فئة.

هذا محلل استدلالي دون اتصال من SquidSec، وليس بديلاً كاملاً عن BloodHound CE. يُفضَّل التحقق من النتائج مقابل BloodHound CE على نفس الملف المضغوط لضمان تطابق المسارات.


أوامر مثال

استبدل ./sharpout بدليل SharpHound/AzureHound أو بالملف المضغوط. عند استخدام نسخة من المصدر: استخدم python3 BloodBash.py بدلاً من bloodbash.

الأساسيات```bash

Help (tables + examples)

bloodbash --help bloodbash --help-advanced

Default = quick wins (high-signal day-0 triage)

bloodbash ./sharpout bloodbash ./sharpout --quick-wins bloodbash ./sharpout --quick-wins --domain CORP.LOCAL bloodbash ./2024-collection.zip --quick-wins

Interactive picker

bloodbash ./sharpout --wizard

Full attack analysis (--all auto --fast on large graphs; inventory is separate)

bloodbash ./sharpout --all bloodbash ./sharpout --all --fast bloodbash ./2024-collection.zip --all bloodbash ./sharpout --all --inventory

Merge multiple collections into one graph

bloodbash ./lowpriv.zip --merge ./da.zip --all --fast bloodbash ./forest-root --merge ./child-a.zip ./child-b.zip --quick-wins

One domain / tenant only

bloodbash ./sharpout --all --domain CORP.LOCAL bloodbash ./azureout --azure-privileged-roles --domain

Domain trusts

bloodbash ./sharpout --trust bloodbash ./sharpout --all --trust

In-repo samples

bloodbash SampleSharphoundADData --quick-wins bloodbash SampleSharphoundADData --all --fast --all-findings bloodbash SampleAzurehoundData --azure-privileged-roles --azure-guest-access --all-findings

root@kitploit:~
### ماذا يشغّل `--quick-wins`

مجموعة منسّقة عالية الإشارة (تتضمن `--fast`، ملخصًا مفصّلًا، جدولًا كاملًا بالنتائج). **ليست** تفريغًا كاملًا للمخزون/Azure. الأقسام الفارغة تبقى صامتة.

| المجال | الوحدات |
|------|---------|
| الامتيازات | DCSync (غير متوقع)، ADCS، ACLs الخطيرة + ACLs غير HV المثيرة للاهتمام، RBCD + can-configure، غير مقيد (DC مقابل غير DC)، مقيّد، بيانات اعتماد الظل، LAPS (+ القرّاء)، علاقات الثقة |
| بيانات الاعتماد | Kerberoast، AS-REP، **privileged roast**، password-in-description، PasswordNotRequired |
| العمليات | الجلسات / ملخص المسؤول المحلي، صحة جمع البيانات |
| المسارات | أقصر المسارات إلى HV، أكثر المسارات القصيرة ازدحامًا، path-break |

الملف التعريفي المكافئ: `--profile quick-wins` (انظر `profiles/quick-wins.yaml`).

### ملف الاختراق (مستخدم تم اختراقه حديثًا / مستخدم موطئ القدم)

العرض **الصادر**: «لقد اخترقت هذا الكيان للتو - ما الذي يمكنه فعله؟»

| الخيار | المعنى |
|------|---------|
| `--from-user` / `--compromise` | بناء ملف (المجموعات المتداخلة، الحقوق، مسارات HV) |
| `--from-user-export [DIR]` | كتابة قوائم txt/csv/json (الافتراضي `compromise-<user>/`) |
| `--owned` / `--owned-file` | مختلف: المسارات **إلى** ذلك الكيان (وارد)؛ الملف مفصول بأسطر |```bash
# Console dossier only
bloodbash ./sharpout --from-user alice
bloodbash ./sharpout --compromise [email protected]

# Console + export pack
bloodbash ./sharpout --from-user alice --from-user-export
bloodbash ./sharpout --from-user alice --from-user-export ./alice-dossier

# Multiple footholds (one subdir each under ./footholds)
bloodbash ./sharpout --from-user alice,bob,svc_backup --from-user-export ./footholds

# Domain-scoped + full findings table
bloodbash ./sharpout --from-user alice --domain CORP.LOCAL --from-user-export --all-findings

# Sample lab: SCOTT has LocalAdmin via Tier2Support and paths to DA
bloodbash SampleSharphoundADData --from-user SCOTT --from-user-export ./scott-out --fast

# Pair with inspect / explicit path
bloodbash ./sharpout --from-user alice --inspect alice
bloodbash ./sharpout --path-from alice --path-to 'domain [email protected]'

# Inbound (who can reach my loot) - not the dossier
bloodbash ./sharpout --owned alice --owned-inventory --shortest-paths
bloodbash ./sharpout --owned-file ./owned.txt --owned-inventory
# Foothold dossiers from a line-delimited list
bloodbash ./sharpout --from-user-file ./footholds.txt --from-user-export ./out

تخطيط التصدير (لكل كيان):```text compromise-alice/ summary.md README.txt counts.csv membership_direct.txt membership_effective.txt adminto_hosts.txt adminto_hosts.csv # bulk AdminTo/LocalAdmin host list paths_to_high_value.txt paths_to_high_value.csv dossier.json rights/ AdminTo.txt AdminTo.csv CanRDP.txt LocalAdmin.txt GenericAll.txt ...

root@kitploit:~
### مسارات الهجوم والمعالجة```bash
bloodbash ./sharpout --shortest-paths
bloodbash ./sharpout --shortest-paths --indirect --fast
# Prefer multi-hop abuse chains (FCP / AdminTo / session / ACL) over pure MemberOf
bloodbash ./sharpout --shortest-paths --path-mode abuse
# Deep discoverability: deeper hops, alternate paths, stepping stones, path-break
bloodbash ./sharpout --deep-paths
bloodbash ./sharpout --path-mode deep --path-depth 16 --path-sources 400 --max-paths 20
# One path to Domain Admins only (stdout = single plain-text path; exit 1 if none)
bloodbash ./sharpout --golden-path
bloodbash ./sharpout --golden-path --from-user alice --domain CORP.LOCAL
bloodbash ./sharpout --busiest-paths short --busiest-paths-top 10
bloodbash ./sharpout --busiest-paths all --busiest-paths-top 5
bloodbash ./sharpout --path-break --path-break-top 20
bloodbash ./sharpout --busiest-paths short --path-break --fast \
  --report-pack ./path-reports --export-zip path-reports.zip
bloodbash ./sharpout --path-from helpdesk --path-to 'domain [email protected]'
bloodbash ./sharpout --path-from alice,bob --path-to 'domain admins,enterprise admins'
bloodbash ./sharpout --deep-analysis
bloodbash ./sharpout --inspect 'DOMAIN [email protected]'

فحوصات AD الانتقائية```bash

Critical / common engagement set

bloodbash ./sharpout --dcsync --adcs --dangerous-permissions --verbose bloodbash ./sharpout --dcsync --adcs --dangerous-permissions --all-findings

Credentials (+ privilege-context tags on roast findings)

bloodbash ./sharpout --kerberoastable --as-rep-roastable --password-descriptions

High-priority: roastable users nested into DA/EA/...

bloodbash ./sharpout --privileged-roast bloodbash ./sharpout --password-never-expires --password-not-required --password-age

Delegation / RBCD (configured + who can configure AllowedToAct) / shadow creds

bloodbash ./sharpout --unconstrained-delegation --constrained-delegation --rbcd bloodbash ./sharpout --shadow-credentials

Trusts, sessions, LAPS (coverage + ReadLAPSPassword readers), SID history, GPO

bloodbash ./sharpout --trust --sessions --laps --sid-history bloodbash ./sharpout --gpo-abuse --gpo-parsing bloodbash ./sharpout --gpo-abuse --gpo-content-dir ./sysvol-gpo-xml

root@kitploit:~
### المخزون، الملفات التعريفية، والمخرجات```bash
# List domains / tenants in a collection (then exit)
bloodbash ./sharpout --list-domains

# Inventory modules (opt-in; not part of --all). Stats dashboard still prints on --all.
bloodbash ./sharpout --inventory
bloodbash ./sharpout --stale-accounts --password-age --privilege-inventory
bloodbash ./sharpout --owned alice --owned-inventory

# Built-in YAML profiles (see profiles/)
bloodbash ./sharpout --profile quick
bloodbash ./sharpout --profile quick-wins   # same set as --quick-wins
bloodbash ./sharpout --profile adcs-heavy
bloodbash ./sharpout --profile hygiene
bloodbash ./sharpout --profile ./my-engagement.yaml

# Multi-page HTML report pack + zip
bloodbash ./sharpout --inventory --busiest-paths short --path-break \
  --report-pack ./reports --export-zip bloodbash-reports.zip --log-file ./bloodbash.log

# PlumHound-style multi-CSV pack (task CSVs + index.csv; optional zip)
bloodbash ./sharpout --csv-pack ./ph-reports
bloodbash ./sharpout --csv-pack ./ph-reports --export-zip ph-reports.zip
bloodbash ./sharpout --all --fast --csv-pack ./ph-full --export-zip ph-full.zip

# Single-file exports
bloodbash ./sharpout --all --export=md
bloodbash ./sharpout --all --export=html
bloodbash ./sharpout --all --export=csv
bloodbash ./sharpout --all --export=json --export-bh --dot graph.dot
bloodbash ./sharpout --all --export=yaml

# Graph cache (automatic by default — re-run different checks without re-ingest)
bloodbash ./sharpout --dcsync              # builds + caches graph
bloodbash ./sharpout --kerberoastable      # cache hit; only runs kerberoast check
bloodbash ./sharpout --all --rebuild-cache # force re-ingest
bloodbash ./sharpout --all --no-cache      # disable cache
bloodbash ./sharpout --cache-dir /tmp/bb-cache --all
# Explicit SQLite path (still fingerprint-validated against sources)
bloodbash ./sharpout --all --db bloodbash.db
bloodbash . --db bloodbash.db --from-user alice --from-user-export

محتويات حزمة CSV بأسلوب PlumHound

--csv-pack DIR يكتب ملف CSV واحدًا لكل مهمة جرد بالإضافة إلى index.csv / README.txt (بدون Neo4j):

Azure / Entra```bash

bloodbash ./azureout --azure-privileged-roles bloodbash ./azureout --azure-app-secrets --azure-sp-abuse bloodbash ./azureout --azure-mfa-bypass --azure-guest-access bloodbash ./azureout
--azure-privileged-roles --azure-app-secrets --azure-mfa-bypass
--azure-guest-access --azure-sp-abuse --all-findings --export=html

bloodbash SampleAzurehoundData
--azure-privileged-roles --azure-guest-access --all-findings

root@kitploit:~
### وصفات المشاركة المجمعة```bash
# Nightly full + deliverable
bloodbash ./sharpout --all --fast --all-findings \
  --report-pack ./nightly --export-zip nightly.zip --log-file nightly.log

# Dual collection (low-priv then DA) in one pass
bloodbash ./lowpriv.zip --merge ./da.zip --all --fast --csv-pack ./ph-full

# Foothold day-0 then domain hygiene
bloodbash ./sharpout --from-user alice --from-user-export ./dossiers
bloodbash ./sharpout --profile hygiene --report-pack ./hygiene --export-zip hygiene.zip

# ADCS-focused with path remediation
bloodbash ./sharpout --profile adcs-heavy --path-break --busiest-paths short \
  --report-pack ./adcs-paths --export-zip adcs-paths.zip

مرجع الخيارات

حزم التقارير، ملفات التعريف، ملفات الاختراق، المخرجات (v1.4+)

خيارات مفيدة أخرى

يُضمَّن أيضًا ضمن --all / الخيارات الانتقائية: لافتة الحالة الصحية للبيانات المجمّعة؛ إساءة استخدام ACL مُثيرة للاهتمام خارج الأهداف عالية القيمة؛ وسوم سياق الامتيازات على نتائج الروست؛ انقسام DCSync غير المتوقع؛ وحدات تحكم النطاق غير المقيدة مقابل غيرها؛ قرّاء LAPS؛ القابلون لتهيئة RBCD؛ النسب المئوية للوحة الإحصائيات؛ إخفاء الأقسام الفارغة في التشغيلات الواسعة.

مفاتيح خاصة بـ Azure فقط: --azure-privileged-roles, --azure-app-secrets, --azure-mfa-bypass, --azure-guest-access, --azure-sp-abuse.

شغّل bloodbash --help للاطلاع على نقطة البداية + بطاقة مرجعية سريعة، أو --help-advanced لجداول الخيارات الكاملة والأمثلة.

ملاحظات حول SharpHound CE

يفهم محرك الاستيعاب مخرجات أداة الجمع الحديثة: Members للمجموعات، وAllowedToAct (RBCD)، وSessions / LocalGroups، وTrusts[] للنطاقات، وسجل SID، وأسماء خصائص CE البديلة، والاستخراج الآمن للملفات المضغوطة (مع حظر Zip Slip). يتطلب DCSync صلاحيتي GetChanges + GetChangesAll. تتبع تسميات ADCS تصنيف SpecterOps ESC1-ESC8 (+ مرشحات ESC9/ESC13 عند توفر الخيارات). تبقى كائنات أجهزة وحدات تحكم النطاق أهدافًا عالية القيمة. لا تُغرِق خيارات highvalue الخاصة بمحطات العمل في مجموعات المسؤولين المحليين مجموعة الأهداف عالية القيمة (HV).

وحدة Metasploit

تُغلّف واجهة SquidSec BloodBash CLI (v1.4+) وتُدخل النتائج في قاعدة بيانات Metasploit. تتبع الخيارات واجهة CLI: فحوصات AD/Azure، والجرد، وbusiest-paths / path-break، وملفات اختراق --from-user، وملفات التعريف، وحزم التقارير، والتصديرات، والتخزين المؤقت للرسم البياني (--db / التخزين التلقائي).```bash cp modules/auxiliary/analyzer/bloodbash_analyzer.rb
/opt/metasploit-framework/modules/auxiliary/analyzer/

then in msfconsole: reload_all

root@kitploit:~
The input chunk is empty — no content was provided to translate. Please supply the Markdown text for chunk 33.```text
use auxiliary/analyzer/bloodbash_analyzer
set BLOODBASH_PATH /path/to/BloodBash/BloodBash.py
set JSON_DIR /path/to/collector_json_or.zip
set ALL_CHECKS true
run

I apologize, but I don't see any content in the "INPUT:" section of your message. The chunk appears to be empty. Could you please provide the actual content you'd like me to translate?```text

Foothold dossier + hygiene (parity with CLI examples)

set FROM_USER alice set FROM_USER_EXPORT set PASSWORD_NEVER_EXPIRES true set KERBEROASTABLE true set ALL_FINDINGS true run

root@kitploit:~
اضبط `PYTHON` إذا لم يكن `python3` موجودًا في `PATH`. وجّه `BLOODBASH_PATH` إلى ملف ثنائي مستقل (غير `.py`) لتخطي مفسّر بايثون. تصفية النطاق غير حساسة لحالة الأحرف (تطابق CLI).
## التطوير```bash
pip install -r requirements-dev.txt
python3 -m pytest test_bloodbash.py test_members_ingest.py \
  test_detection_variations.py test_compromise_dossier.py \
  test_synthetic_corpus.py test_ludus_collections.py \
  test_real_data_reliability.py test_graph_cache.py \
  test_owned_file.py test_golden_path.py test_deep_paths.py \
  test_ci_pytest_suite.py -q

مجموعة SharpHound الاصطناعية (الانحدار عالي الإنتروبيا)

الملفات المجمّعة العامة صغيرة ومنخفضة الإنتروبيا. من أجل اختبار انحدار الكاشف، نُرفق مختبر SharpHound CE الاصطناعي (testData/synthetic-corp-lab/) مع حقيقة أرضية معروفة (DCSync غير متوقع، كتابة GPO لمستخدمي المصادقة، تكوين RBCD بالجملة، ESC1، roast، مزيج LAPS، إلخ). لا توجد بيانات حقيقية من عمليات ميدانية.```bash

Regenerate corpus + ground_truth.json

python3 tools/generate_synthetic_sharphound.py --out testData/synthetic-corp-lab

Smoke BloodBash against it

python3 BloodBash.py testData/synthetic-corp-lab --all --fast --all-findings python3 BloodBash.py testData/synthetic-corp-lab --from-user alice.low --fast

20 multi-hop engagement scenarios (classic + common debt paths)

python3 tools/run_scenario_battery.py python3 tools/run_scenario_battery.py --count 20 --seed 42 -v python3 tools/run_scenario_battery.py --list-profiles python3 tools/run_scenario_battery.py --keep --work-dir /tmp/bb-engagements

root@kitploit:~
CI (PR + main) يشغّل اختبارات الوحدة/التكامل **و** `run_scenario_battery.py --count 20 --seed 42`
(20 سلسلة مهام). تتطلب حماية الفرع فحص الحالة **للاختبار**.

أدوات مساعدة للدقة (بدون بيانات عملاء):```bash
# Mutate synthetic corpus (dup ACEs, orphan SIDs, null ACEs, partial drops)
python3 tools/mutate_corpus.py --in testData/synthetic-corp-lab --out /tmp/mut --seed 1
python3 BloodBash.py /tmp/mut --all --fast

# GPP / cPassword XML fixtures
python3 BloodBash.py testData/synthetic-corp-lab \
  --gpo-content-dir testData/gpo-xml-fixtures --gpo-parsing

بناء ثنائي محلي```bash

python3 -m venv .venv-build && source .venv-build/bin/activate pip install -r requirements.txt -r requirements-build.txt pyinstaller --onefile --console --name bloodbash-linux-x64 BloodBash.py

-> dist/bloodbash-linux-x64

root@kitploit:~
CI (عند كل push إلى `main`) يشغّل الاختبارات، ويبني ملفات ثنائية أحادية الملف لنظامي Linux وWindows باستخدام PyInstaller، وينشر إصدارًا بأسماء أصول (assets) مستقرة لروابط `/releases/latest/download/...` أعلاه. تبدو الوسوم مثل `v1.4.1-build.N`.

## الترخيص والإسناد

MIT - للاختبارات الأمنية **المصرّح بها** وأنشطة الفريق الأحمر فقط.

**BloodBash** هو مشروع مفتوح المصدر أُنشئ ويُدار بواسطة **[SquidSec](https://squidoffense.com/)**.
تنزيل الأداة
المنظمةSquidSec
الموقع الإلكترونيhttps://squidoffense.com/
إصدار التطبيقv1.4.2
أحدث ملف تنفيذيGitHub release
الترخيصMIT
بيئة التشغيل (المصدر)Python 3.9+
المنطقةالفحوصات
امتيازات ADDCSync (GetChanges+GetChangesAll؛ تتم معالجة DA/EA المتداخلة كما هو متوقع)، قوائم ACL خطيرة على الكائنات عالية القيمة، استغلالات ACL غير-HV المثيرة للاهتمام (ForceChangePassword / GenericAll / GenericWrite على المستخدمين/أجهزة الكمبيوتر/المجموعات؛ يتم كتم ضجيج GenericWrite الجماعي لأجهزة الكمبيوتر)، استغلال GPO، RBCD (مُهيأ + يمكن تهيئته)، التفويض المقيد/غير المقيد (أقسام DC مقابل غير DC)، سجل SID، علاقات ثقة المجال (--trust)
بيانات اعتماد ADقابلة للهجوم عبر Kerberoast، قابلة للهجوم عبر AS-REP (مع وسمات AdminCount / OWNED / LASTLOG)، التحميص المميز (--privileged-roast: قابلة للتحميص + DA/EA متداخلة / AdminCount)، بيانات اعتماد الظل، كلمة مرور في الوصف، PasswordNeverExpires / PasswordNotRequired. لا تستبعد خاصية sensitive (NOT_DELEGATED) في SharpHound مرشحي التحميص
ADCSESC1-ESC7 (+ ESC8/ESC9/ESC13 عند وجود خصائص المجمّع). تتطلب ESC10-12 بيانات دور السجل/HTTP التي غالبًا ما تكون غائبة عن SharpHound. رسالة تنبيه بسيطة عندما لا يحتوي الملف المضغوط على كائنات شهادات
Azure / Entraالأدوار المميزة، مسارات التحكم في بيانات اعتماد التطبيق/SP، تعطيل MFA الصريح، المستخدمون الضيوف، صلاحيات إساءة استخدام SP
المساراتأقصر المسارات إلى الأهداف عالية القيمة (مجموعة محدودة في --fast؛ تشمل HV مجموعة Builtin Administrators وأجهزة كمبيوتر وحدات تحكم المجال)، الكيانات المملوكة (--owned = وارد)، مخصص --path-from / --path-to
ملف التسوية--from-user / --compromise: العضوية الصادرة، عدد AdminTo/RDP/ACL، المجموعات المتداخلة، مسارات تلقائية إلى HV، تصدير txt/csv بما في ذلك قوائم مضيفي AdminTo الجماعية
معالجة المساراتترتيب أكثر المسارات ازدحامًا (--busiest-paths)، توصيات إزالة الحواف (--path-break)
الجردسلالم عمر كلمات المرور، الحسابات القديمة/غير النشطة، مجموعات الامتيازات، الهيكلية (المجالات/وحدات تحكم المجال/علاقات الثقة)، جرد الكائنات المملوكة، لوحة إحصائيات بالنسبة المئوية %
حزمة CSV بأسلوب PlumHound--csv-pack DIR: جرد متعدد CSV (المجالات، DA، القابلة للتحميص، LAPS، حواف Everyone/الصلاحيات المفرطة، كمبيوتر AdminTo كمبيوتر، مسؤول محلي + امتياز مزدوج، مضيفو AdminTo الجماعيون) + index.csv
مدخلات متعددة--merge PATH… يدمج الأدلة/الملفات المضغوطة الإضافية في رسم بياني واحد (مجالات متعددة / مجموعات مزدوجة منخفضة الامتياز + DA)
أخرىلافتة صحة الجمع (عدد الكائنات، تغطية الجلسات/AdminTo/RDP، وجود ADCS)، تغطية LAPS (haslaps) + قارئو كلمات مرور LAPS (ReadLAPSPassword)، GPO XML (--gpo-content-dir)، حواف Trusts[] للمجال، تداخل المجموعات، --list-domains
CSVالوصف
domains.csvنطاقات AD في المجموعة
domain_admins.csvالكيانات المتداخلة داخل مجموعات DA/EA
users.csv / computers.csv / groups.csvجرد الكائنات الأساسي
kerberoastable.csv / asrep_roastable.csvمرشحو هجمات الروست على الاعتمادات (+ وسوم)
password_never_expires.csvمستخدمو PNE
laps_not_enabled.csvأجهزة الكمبيوتر بدون LAPS
local_admins_users.csvمستخدم/مجموعة → جهاز AdminTo/LocalAdmin
user_sessions.csvHasSession جهاز ↔ مستخدم
relationships_everyone.csv (و Auth Users و Domain Users و …)حواف من الكيانات الواسعة جدًا
overprivileged_relationships.csvحواف مجمعة من Everyone/Auth/Domain Users/...
computer_adminto_computer.csvجهاز ← جهاز AdminTo
dual_privileged_and_local_admin.csvأعضاء DA/EA الذين لديهم أيضًا AdminTo (التدرج الطبقي)
bulk_adminto_hosts.csvالكيانات مرتبة حسب عدد مضيفي AdminTo
index.csvفهرس التقرير (ملف → عدد الصفوف)
الخيارالغرض
--from-user / --compromise USERملف اختراق (صادر): المجموعات المتداخلة، وأعداد AdminTo/RDP/ACL، والمسارات إلى الأهداف عالية القيمة
--from-user-export [DIR]تصدير ملف الاختراق txt/csv/json + قوائم adminto_hosts (الافتراضي compromise-<user>/)
--busiest-paths [short|all]ترتيب الكيانات صاحبة أكبر عدد من المسارات إلى الأهداف عالية القيمة
--path-breakاقتراح العلاقات التي يجب إزالتها لكسر أكبر عدد من مسارات الهجوم
--inventoryجرد بنيوي + جرد أعمار كلمات المرور + جرد الحسابات القديمة + جرد الامتيازات
--password-age / --stale-accounts / --privilege-inventoryوحدات الجرد المستقلة
--owned-inventoryجرد AdminTo / MemberOf للكيانات المُخترَقة عبر --owned / --owned-file
--owned-file FILEكيانات مُخترَقة مفصولة بأسطر (تُدمج مع --owned)
--from-user-file FILEنقاط ارتكاز مفصولة بأسطر لملفات الاختراق (تُدمج مع --from-user)
--report-pack DIRمجموعة صفحات HTML متعددة + index.html + ملفات CSV لكل قسم
--csv-pack DIRحزمة CSV متعددة على غرار PlumHound (جرد + امتيازات زائدة + تقارير AdminTo + index.csv)
--export-zip [FILE]ضغط مجلد --report-pack أو --csv-pack في ملف تسليم واحد
--profile FILE|nameملف تعريف تحليل بصيغة YAML (quick، quick-wins، adcs-heavy، hygiene، أو مسار)
--log-file [FILE]سجل تشغيل قابل للإلحاق (الافتراضي bloodbash.log)
--all-findingsفي نهاية التشغيل: طباعة جدول بكل النتائج دون استثناء (حتى لو كانت فارغة)
الخيارالغرض
--allتشغيل جميع وحدات التحليل (يتم إخفاء أقسام Active Directory الفارغة)
--quick-winsفرز اليوم الأول عالي الإشارة (وهو الافتراضي أيضًا عند عدم تحديد خيارات فحص؛ يستلزم --fast)
--merge PATH…مجلدات أو ملفات مضغوطة إضافية من SharpHound/AzureHound لدمجها في رسم بياني واحد
--trustفحوصات الثقة بين النطاقات / إساءة استخدام ترشيح SID
--wizardمنتقي الوضع التفاعلي (quick-wins / full / dossier / profile)
--help-advancedجداول الخيارات الكاملة + جميع الأمثلة (اختصار --help يغطي نقطة البداية فقط)
--fastقصر البحث عن المسارات على الأهداف الرئيسية من نوع DA/EA (وليس تخطيًا كاملًا). يُفعَّل تلقائيًا للرسوم البيانية الكبيرة مع --all
--domain Xالتصفية على نطاق AD واحد أو tenantId في Azure (دون تمييز بين الأحرف الكبيرة والصغيرة)
--list-domainsعرض نطاقات AD / مستأجري Azure في المجموعة ثم الخروج
--owned a,bالمسارات إلى الكيانات المُخترَقة (وارد)
--owned-file FILEمثل --owned، من ملف مفصول بأسطر (التعليقات بـ # مسموحة)
--from-user-file FILEمثل --from-user، من ملف مفصول بأسطر
--path-from / --path-toأقصر المسارات بين أي نقطتين
--inspect NODEتفريغ خصائص وحواف عقدة
--indirectتضمين المسارات/الصلاحيات عبر المجموعات
--deep-analysisتحليل بطيء لتداخل المجموعات + كشف الحلقات
--privileged-roastمستخدمو Kerberoast/AS-REP المتداخلون في مجموعات DA/EA أو مجموعات الامتيازات الأخرى (أو AdminCount)
--gpo-content-dir DIRتحليل ملفات GPO XML (المهام، والسكربتات، وcPassword)
--export {md,json,html,csv,yaml}كتابة تقرير (الأهداف عالية القيمة + النتائج مرتبة حسب الأولوية)
--export-bhمخطط JSON على غرار BloodHound
--dot [FILE]تصدير Graphviz DOT
--db FILEمسار SQLite للرسم البياني (الافتراضي: تخزين تلقائي حسب بصمة المجموعة تحت ~/.cache/bloodbash/)
--cache-dir DIRتجاوز مجلد التخزين المؤقت التلقائي للرسم البياني
--no-cacheإعادة الاستيعاب دائمًا؛ دون قراءة/كتابة التخزين المؤقت للرسم البياني
--rebuild-cacheفرض إعادة الاستيعاب وتحديث التخزين المؤقت للرسم البياني
--debugتسجيل مفصّل للتحليل والبناء