
SharpHound/AzureHound JSON के लिए ऑफ़लाइन AD/Entra हमले-पथ विश्लेषक। BloodHound या Neo4j के बिना प्राथमिकता-आधारित विशेषाधिकार वृद्धि, क्रेडेंशियल और गलत कॉन्फ़िगरेशन निष्कर्ष प्रस्तुत करता है।
एक SquidSec ओपन सोर्स प्रोजेक्ट
SquidOffense.com ·
GitHub
BloodBash एक ओपन सोर्स ऑफ़लाइन SharpHound और AzureHound JSON विश्लेषक है, जिसे SquidSec द्वारा निर्मित और अनुरक्षित किया जाता है। यह एक ग्राफ़ बनाता है, AD/Entra आक्रमण पथों और गलत कॉन्फ़िगरेशन को उजागर करता है, और प्राथमिकता-क्रमित निष्कर्ष प्रिंट करता है। Neo4j या BloodHound UI की कोई आवश्यकता नहीं है।
main में मर्ज स्वचालित रूप से Linux और Windows बाइनरी बनाते हैं और एक GitHub Release (टैग v1.4.2-build.N) प्रकाशित करते हैं।
BloodBash को SquidSec द्वारा सुरक्षा समुदाय के लिए निर्मित और अनुरक्षित किया जाता है - रेड टीमर, पेंटेस्टर, और डिफेंडर जिन्हें BloodHound इंफ्रास्ट्रक्चर सेट अप किए बिना तेज़ ऑफ़लाइन AD/Entra विश्लेषण की आवश्यकता होती है।
स्टैंडअलोन SquidSec BloodBash एक्ज़ीक्यूटेबल - Python, pip, या venv की कोई आवश्यकता नहीं:
| प्लेटफ़ॉर्म | नवीनतम डाउनलोड |
|---|---|
| Linux x64 | bloodbash-linux-x64 |
| Windows x64 | bloodbash-windows-x64.exe |
curl -sL -o bloodbash
https://github.com/DotNetRussell/BloodBash/releases/latest/download/bloodbash-linux-x64
chmod +x bloodbash
./bloodbash /path/to/json --all
(कोई सामग्री प्रदान नहीं की गई)```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
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
निर्भरताएँ: networkx, rich, tqdm, pyyaml।
इन 3 से शुरू करें (SharpHound/AzureHound निर्देशिका या .zip की ओर इंगित करें):```bash
bloodbash /path/to/json
bloodbash /path/to/json --quick-wins
bloodbash ./sharpout --from-user alice --from-user-export
bloodbash /path/to/json --all --fast
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
केवल डायरेक्टरी (कोई चेक फ़्लैग नहीं) quick-wins ट्राइएज चलाती है। पूर्ण हमले-पथ विश्लेषण (इन्वेंट्री नहीं) के लिए --all उपयोग करें, या इंटरैक्टिव पिकर के लिए --wizard उपयोग करें।
--all और --quick-wins के अंतर्गत, खाली डिटेक्टर अनुभागों को दबा दिया जाता है ताकि कंसोल पठनीय बना रहे। चयनात्मक फ़्लैग अभी भी आपके द्वारा माँगे गए जाँचों के लिए हरे "none found" पंक्तियाँ प्रिंट करते हैं।
नमूना डेटा: SampleSharphoundADData/ और SampleAzurehoundData/।```bash
bloodbash --help # start-here + cheat sheet
bloodbash --help-advanced # full flag tables + all examples
अधिक रेसिपी: [docs/cookbook.md](https://github.com/squidsec/bloodbash/blob/HEAD/docs/cookbook.md)।
## यह क्या पाता है
| क्षेत्र | जाँच |
|------|--------|
| **AD विशेषाधिकार** | DCSync (GetChanges+GetChangesAll; नेस्टेड DA/EA अपेक्षित रूप में माने जाते हैं), उच्च-मूल्य वस्तुओं पर खतरनाक ACL, **दिलचस्प गैर-HV ACL दुरुपयोग** (ForceChangePassword / GenericAll / GenericWrite उपयोगकर्ताओं/कंप्यूटरों/समूहों पर; बल्क कंप्यूटर GenericWrite शोर दबा दिया गया), GPO दुरुपयोग, RBCD (कॉन्फ़िगर किया गया + *कॉन्फ़िगर कर सकते हैं*), प्रतिबंधित/अप्रतिबंधित delegation (**DC बनाम गैर-DC** अनुभाग), SID इतिहास, **डोमेन ट्रस्ट** (`--trust`) |
| **AD क्रेडेंशियल** | Kerberoastable, AS-REP roastable (**AdminCount / OWNED / LASTLOG** टैग के साथ), **विशेषाधिकार प्राप्त roast** (`--privileged-roast`: roastable + नेस्टेड DA/EA / AdminCount), शैडो क्रेडेंशियल, विवरण में पासवर्ड, PasswordNeverExpires / PasswordNotRequired। SharpHound `sensitive` (NOT_DELEGATED) roast उम्मीदवारों को बाहर **नहीं** करता |
| **ADCS** | ESC1-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`) |
| **इन्वेंटरी** | पासवर्ड-आयु सीढ़ियाँ, अप्रचलित/निष्क्रिय खाते, विशेषाधिकार समूह, संरचनात्मक (डोमेन/DC/ट्रस्ट), स्वामित्व-वस्तु इन्वेंटरी, **प्रतिशत के साथ सांख्यिकी डैशबोर्ड** |
| **PlumHound-शैली CSV पैक** | `--csv-pack DIR`: मल्टी-CSV इन्वेंटरी (डोमेन, DA, roastables, LAPS, Everyone/overpriv एज, कंप्यूटर AdminTo कंप्यूटर, दोहरा priv+लोकल एडमिन, बल्क AdminTo होस्ट) + `index.csv` |
| **मल्टी-इनपुट** | `--merge PATH…` अतिरिक्त निर्देशिकाओं/ज़िप को एक ग्राफ़ में मिलाता है (मल्टी-डोमेन / दोहरा low-priv+DA संग्रह) |
| **अन्य** | **संग्रह स्वास्थ्य** बैनर (ऑब्जेक्ट गणना, session/AdminTo/RDP कवरेज, ADCS उपस्थिति), LAPS कवरेज (`haslaps`) + **LAPS पासवर्ड रीडर** (`ReadLAPSPassword`), GPO XML (`--gpo-content-dir`), डोमेन `Trusts[]` एज, समूह नेस्टिंग, `--list-domains` |
निष्कर्षों को स्कोर किया जाता है और **प्राथमिकता प्राप्त निष्कर्ष** तालिका में सारांशित किया जाता है (उच्च-मात्रा स्वच्छता श्रेणियाँ संक्षिप्त हो जाती हैं; पूर्ण संक्षिप्त सूची के लिए `--all-findings` का उपयोग करें)। दुरुपयोग पैनल प्रत्येक श्रेणी के लिए उपकरण/कमांड सुझाते हैं।
यह SquidSec का एक **ऑफ़लाइन ह्यूरिस्टिक विश्लेषक** है, न कि पूर्ण BloodHound CE प्रतिस्थापन। पथ समानता के लिए उसी ज़िप पर BloodHound CE के विरुद्ध सत्यापन को प्राथमिकता दें।
---
## उदाहरण कमांड
`./sharpout` को अपनी SharpHound/AzureHound निर्देशिका या ज़िप से बदलें। स्रोत चेकआउट: `bloodbash` के बजाय `python3 BloodBash.py` का उपयोग करें।
### मूल बातें```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 <tenantId>
# 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
--quick-wins runsCurated high-signal set (implies --fast, verbose summary, full findings table). Not a full inventory/Azure dump. Empty sections stay quiet.
| Area | Modules |
|---|---|
| Privilege | DCSync (unexpected), ADCS, dangerous ACLs + interesting non-HV ACLs, RBCD + can-configure, unconstrained (DC vs non-DC), constrained, shadow creds, LAPS (+ readers), trusts |
Equivalent profile: --profile quick-wins (see profiles/quick-wins.yaml).
Outbound view: "I just compromised this principal - what can they do?"
bloodbash ./sharpout --from-user alice bloodbash ./sharpout --compromise [email protected]
bloodbash ./sharpout --from-user alice --from-user-export bloodbash ./sharpout --from-user alice --from-user-export ./alice-dossier
bloodbash ./sharpout --from-user alice,bob,svc_backup --from-user-export ./footholds
bloodbash ./sharpout --from-user alice --domain CORP.LOCAL --from-user-export --all-findings
bloodbash SampleSharphoundADData --from-user SCOTT --from-user-export ./scott-out --fast
bloodbash ./sharpout --from-user alice --inspect alice bloodbash ./sharpout --path-from alice --path-to 'domain [email protected]'
bloodbash ./sharpout --owned alice --owned-inventory --shortest-paths bloodbash ./sharpout --owned-file ./owned.txt --owned-inventory
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 ...
bloodbash ./sharpout --shortest-paths bloodbash ./sharpout --shortest-paths --indirect --fast
bloodbash ./sharpout --shortest-paths --path-mode abuse
bloodbash ./sharpout --deep-paths bloodbash ./sharpout --path-mode deep --path-depth 16 --path-sources 400 --max-paths 20
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
bloodbash ./sharpout --list-domains
bloodbash ./sharpout --inventory bloodbash ./sharpout --stale-accounts --password-age --privilege-inventory bloodbash ./sharpout --owned alice --owned-inventory
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
bloodbash ./sharpout --inventory --busiest-paths short --path-break
--report-pack ./reports --export-zip bloodbash-reports.zip --log-file ./bloodbash.log
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
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
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
bloodbash ./sharpout --all --db bloodbash.db bloodbash . --db bloodbash.db --from-user alice --from-user-export
### PlumHound-शैली CSV पैक सामग्री
`--csv-pack DIR` प्रत्येक इन्वेंट्री कार्य के लिए एक CSV लिखता है, साथ ही `index.csv` / `README.txt` (कोई Neo4j नहीं):
| 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.csv` | HasSession कंप्यूटर ↔ उपयोगकर्ता |
| `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` | रिपोर्ट इंडेक्स (फ़ाइल → पंक्ति गिनती) |
### 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
bloodbash ./sharpout --all --fast --all-findings
--report-pack ./nightly --export-zip nightly.zip --log-file nightly.log
bloodbash ./lowpriv.zip --merge ./da.zip --all --fast --csv-pack ./ph-full
bloodbash ./sharpout --from-user alice --from-user-export ./dossiers bloodbash ./sharpout --profile hygiene --report-pack ./hygiene --export-zip hygiene.zip
bloodbash ./sharpout --profile adcs-heavy --path-break --busiest-paths short
--report-pack ./adcs-paths --export-zip adcs-paths.zip
---
## फ़्लैग्स संदर्भ
### रिपोर्ट पैक, प्रोफ़ाइल, डोसियर, डिलिवरेबल्स (v1.4+)
| Flag | उद्देश्य |
|------|---------|
| `--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` | `--owned` / `--owned-file` प्रिंसिपलों के लिए AdminTo / MemberOf इन्वेंट्री |
| `--owned-file FILE` | लाइन-सीमांकित स्वामित्व प्रिंसिपल (`--owned` के साथ विलय) |
| `--from-user-file FILE` | समझौता डोसियरों के लिए लाइन-सीमांकित फ़ुटहोल्ड (`--from-user` के साथ विलय) |
| `--report-pack DIR` | बहु-पृष्ठ HTML सूट + `index.html` + प्रति-अनुभाग CSV |
| `--csv-pack DIR` | **PlumHound-शैली मल्टी-CSV पैक** (इन्वेंट्री + ओवरप्रिव + 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` | रन के अंत में: **हर** फाइंडिंग की तालिका प्रिंट करें (खाली होने पर भी) |
### अन्य उपयोगी फ़्लैग्स
| Flag | उद्देश्य |
|------|---------|
| `--all` | हर विश्लेषण मॉड्यूल चलाएँ (खाली AD अनुभाग दबाए गए) |
| `--quick-wins` | **हाई-सिग्नल day-0 ट्राइएज** (बिना चेक फ़्लैग्स के **डिफ़ॉल्ट** भी; `--fast` को शामिल करता है) |
| `--merge PATH…` | एक ग्राफ़ में यूनियन करने के लिए अतिरिक्त SharpHound/AzureHound निर्देशिकाएँ या ज़िप |
| `--trust` | डोमेन ट्रस्ट / SID-फ़िल्टरिंग दुरुपयोग जाँच |
| `--wizard` | इंटरैक्टिव मोड पिकर (quick-wins / full / dossier / profile) |
| `--help-advanced` | पूर्ण फ़्लैग तालिकाएँ + सभी उदाहरण (short `--help` केवल start-here है) |
| `--fast` | पाथफाइंडिंग को शीर्ष DA/EA-शैली लक्ष्यों तक सीमित करें (पूर्ण स्किप नहीं)। `--all` के साथ बड़े ग्राफ़ के लिए स्वतः-चालू |
| `--domain X` | एक AD डोमेन या Azure `tenantId` पर फ़िल्टर करें (केस-असंवेदनशील) |
| `--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` | DA/EA/अन्य प्रिव समूहों (या AdminCount) में नेस्टेड Kerberoast/AS-REP उपयोगकर्ता |
| `--gpo-content-dir DIR` | GPO XMLs पार्स करें (कार्य, स्क्रिप्ट, cPassword) |
| `--export {md,json,html,csv,yaml}` | एक रिपोर्ट लिखें (उच्च-मूल्य लक्ष्य + प्राथमिकता वाले फाइंडिंग) |
| `--export-bh` | BloodHound-शैली ग्राफ़ JSON |
| `--dot [FILE]` | Graphviz DOT निर्यात |
| `--db FILE` | ग्राफ़ SQLite पथ (डिफ़ॉल्ट: `~/.cache/bloodbash/` के अंतर्गत संग्रह फ़िंगरप्रिंट द्वारा ऑटो-कैश) |
| `--cache-dir DIR` | ऑटो ग्राफ़-कैश निर्देशिका ओवरराइड करें |
| `--no-cache` | हमेशा पुनः-इन्जेस्ट करें; ग्राफ़ कैश पढ़ें/लिखें नहीं |
| `--rebuild-cache` | पुनः-इन्जेस्ट और ग्राफ़ कैश रिफ्रेश करने के लिए बाध्य करें |
| `--debug` | वर्बोज़ पार्स/बिल्ड लॉगिंग |
`--all` / चयनात्मक फ़्लैग्स के अंतर्गत भी शामिल: संग्रह स्वास्थ्य बैनर; दिलचस्प गैर-HV ACL दुरुपयोग; रोस्ट फाइंडिंग पर विशेषाधिकार-संदर्भ टैग; अप्रत्याशित DCSync विभाजन; अनकंस्ट्रेंड DC बनाम गैर-DC; 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 DB में रिपोर्ट करता है।
विकल्प 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
कृपया अनुवाद हेतु मार्कडाउन सामग्री प्रदान करें।```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 cannot provide a translation because the input chunk is empty. There is no source text following "INPUT:" to translate. Please provide the actual chunk content, and I will translate it from English to Hindi following all specified rules.```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
यदि python3 PATH पर नहीं है तो PYTHON सेट करें। Python इंटरप्रेटर को छोड़ने के लिए BLOODBASH_PATH को एक स्टैंडअलोन बाइनरी (गैर-.py) पर इंगित करें। डोमेन फ़िल्टरिंग केस-इन्सेंसिटिव है (CLI से मेल खाता है)।
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, Auth Users GPO राइट, बल्क can-configure 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
CI (PR + main) यूनिट/इंटीग्रेशन टेस्ट और run_scenario_battery.py --count 20 --seed 42 चलाता है
(20 इंटरैक्शन श्रृंखलाएँ)। Branch protection को test status check की आवश्यकता होती है।
सटीकता सहायक (कोई ग्राहक डेटा नहीं):```bash
python3 tools/mutate_corpus.py --in testData/synthetic-corp-lab --out /tmp/mut --seed 1 python3 BloodBash.py /tmp/mut --all --fast
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
CI (main में प्रत्येक पुश पर) परीक्षण चलाता है, PyInstaller के साथ Linux + Windows एक-फ़ाइल बाइनरीज़ बनाता है, और ऊपर दिए गए /releases/latest/download/... लिंक्स के लिए स्थिर संपत्ति नामों के साथ एक Release प्रकाशित करता है। टैग v1.4.1-build.N जैसे दिखाई देते हैं।
MIT - केवल अधिकृत सुरक्षा परीक्षण और रेड टीमिंग के लिए।
BloodBash एक ओपन सोर्स प्रोजेक्ट है जिसे SquidSec द्वारा बनाया और प्रबंधित किया गया है।
| संगठन | SquidSec |
| वेबसाइट | https://squidoffense.com/ |
| ऐप संस्करण | v1.4.2 |
| नवीनतम बाइनरी | |
| लाइसेंस | MIT |
| रनटाइम (स्रोत) | Python 3.9+ |
| Credentials | Kerberoast, AS-REP, privileged roast, password-in-description, PasswordNotRequired |
| Ops | Sessions / local admin summary, collection health |
| Paths | Shortest paths to HV, busiest short paths, path-break |
| Flag | Meaning |
|---|
--from-user / --compromise | Build dossier (nested groups, rights, HV paths) |
--from-user-export [DIR] | Write txt/csv/json lists (default compromise-<user>/) |
--owned / --owned-file | Different: paths to that principal (inbound); file is line-delimited |