#06 BloodHound Cheat Sheet: Memetakan Attack Path Active Directory untuk Security Assessment
Belajar BloodHound untuk memetakan relationship dan attack path Active Directory, memvalidasi privilege exposure, serta menerjemahkannya menjadi detection dan hardening.
Active Directory itu sedikit mirip silsilah keluarga besar: semua orang terhubung, sebagian punya akses ke rumah orang lain, dan kadang ada satu hubungan yang membuat kita bertanya, “Lho, kok dia bisa sampai ke sana?”
Bedanya, kalau yang sedang kita lihat adalah Active Directory (AD), hubungan tersebut bisa berupa group membership, local admin rights, session, delegation, ACL, atau privilege lain yang membentuk attack path menuju aset bernilai tinggi.
Di sinilah BloodHound berguna. BloodHound membantu security assessor melihat relationship di environment identity sebagai graph, bukan sekadar daftar user dan group yang panjangnya bisa membuat kopi keburu dingin.
Artikel #06 dalam Red Team Cheat Sheet Series ini fokus pada konsep dan workflow assessment: bagaimana membaca graph, memprioritaskan path, mengumpulkan evidence secara terkontrol, lalu menerjemahkan hasilnya menjadi detection dan hardening.
Scope dulu, graph kemudian. Gunakan BloodHound hanya pada lab, environment milik sendiri, atau Active Directory yang secara eksplisit masuk scope security assessment. Pengumpulan data directory tetap harus mengikuti Rules of Engagement, data-handling policy, dan prinsip minimum impact.
BloodHound Itu Apa?
BloodHound adalah platform untuk menganalisis relationship dan privilege dalam identity environment menggunakan pendekatan graph.
Kalau laporan tradisional mengatakan:
User A anggota Group B
Group B punya hak terhadap Computer C
Computer C dikelola oleh Admin D
manusia harus menyusun hubungan tersebut sendiri.
BloodHound mengubah cara berpikirnya menjadi:
User A
↓
Group B
↓
Computer C
↓
Privileged Context
Graph membuat pertanyaan keamanan yang tadinya tersembunyi menjadi lebih mudah dilihat:
- siapa yang dapat memengaruhi privileged account?
- workstation mana yang menjadi titik pertemuan credential berprivilege?
- group mana yang punya permission terlalu luas?
- jalur apa yang menghubungkan account biasa dengan Tier 0?
- apakah satu misconfiguration kecil ternyata menjadi bagian dari attack path yang lebih besar?
BloodHound tidak otomatis berarti “domain compromised”. Ia membantu kita menemukan relationship yang perlu divalidasi.
Kenapa Active Directory Cocok Dianalisis sebagai Graph?
AD bukan sekadar database user.
Di dalamnya ada user, group, computer, domain, OU, GPO, session, permission, delegation, certificate infrastructure, dan berbagai relationship lain.
Masalah keamanan sering muncul bukan karena satu object sangat berbahaya, tetapi karena kombinasi relationship.
Contoh sederhana:
Helpdesk User
↓ member of
Support Group
↓ local admin
Application Server
↓ privileged session
Server Admin
Secara terpisah, masing-masing relationship mungkin terlihat masuk akal.
Tetapi kalau kompromi account Helpdesk membuka jalur menuju context Server Admin, kita perlu melihat desain privilege-nya lagi.
Itulah kekuatan graph analysis: ia membantu melihat rantai, bukan cuma titik.
BloodHound CE dan Collector
Dalam deployment modern, BloodHound Community Edition (CE) menyediakan platform graph analysis. Data Active Directory dikumpulkan menggunakan collector yang sesuai, misalnya SharpHound untuk environment Windows/AD.
Collector bukan “tombol hack”. Tugasnya mengumpulkan relationship dan metadata yang kemudian dianalisis BloodHound.
Dalam assessment profesional, pertanyaan penting sebelum collection justru:
- collection method apa yang diperlukan?
- data apa yang benar-benar dibutuhkan?
- berapa banyak host yang akan disentuh?
- apakah collection dapat memicu telemetry?
- di mana hasil collection disimpan?
- siapa yang boleh mengakses data tersebut?
- kapan evidence harus dihapus?
Karena graph AD dapat berisi informasi sensitif tentang struktur privilege organisasi, file hasil collection harus diperlakukan sebagai security assessment evidence, bukan file sementara yang dilempar ke folder Downloads lalu dilupakan sampai tahun depan.
Setup Lab yang Aman
Untuk belajar, gunakan Active Directory lab terisolasi.
Contoh sederhana:
Domain Controller : DC01.lab.local
Member Server : APP01.lab.local
Workstation : WS01.lab.local
Standard User : analyst.lab
Support Group : Helpdesk-Lab
Admin Account : admin.lab
Tambahkan beberapa relationship secara sengaja untuk latihan, misalnya:
analyst.labmenjadi anggotaHelpdesk-Lab;Helpdesk-Labdiberi local administrative access hanya padaWS01;- sebuah account admin melakukan administrative session di host tertentu;
- beberapa group dibuat nested.
Tujuan lab bukan membuat AD seburuk mungkin. Tujuannya memahami bagaimana relationship muncul di graph dan bagaimana perubahan konfigurasi mengubah attack path.
Gunakan snapshot VM sebelum eksperimen dan jangan menghubungkan vulnerable lab ke production network.
Workflow BloodHound yang Lebih Sehat
Daripada langsung mengejar node merah atau path terpendek, gunakan workflow berikut.
Scope
↓
Collection Plan
↓
Controlled Data Collection
↓
Import & Validate
↓
Graph Analysis
↓
Path Validation
↓
Risk Prioritization
↓
Detection Review
↓
Hardening
↓
Re-collection / Retest
Mari kita bongkar satu per satu.
1. Tentukan Scope Identity
Sebelum collection, dokumentasikan domain, OU, account, dan sistem yang termasuk assessment.
Contoh:
Domain : lab.local
In Scope : AD objects dan member hosts lab
Excluded : backup infrastructure
Collection Time : maintenance window
Objective : privilege relationship review
Kalau objective-nya hanya mengevaluasi privilege relationship, jangan otomatis mengaktifkan collection paling luas hanya karena tool menyediakan opsinya.
Minimum necessary data tetap prinsip yang bagus.
2. Rencanakan Collection
Collection strategy menentukan data apa yang akan masuk graph.
Secara konsep, data yang menarik dapat meliputi:
- user dan group relationship;
- group membership;
- computer objects;
- local administrative relationship;
- session-related information jika memang diizinkan dan diperlukan;
- ACL/delegated permissions;
- GPO relationship;
- domain trust;
- privilege relationship lain yang didukung collector.
Tidak semua assessment membutuhkan semua jenis data.
Collection yang lebih luas juga berarti lebih banyak query, lebih banyak telemetry, lebih banyak evidence sensitif, dan lebih banyak hal yang harus dijaga.
3. Import Data dan Validasi
Setelah data collector masuk BloodHound, jangan langsung percaya bahwa semua relationship sempurna.
Validasi hal-hal dasar:
- domain yang diharapkan muncul;
- jumlah user dan computer masuk akal;
- privileged groups dikenali;
- object lama/stale tidak mendominasi hasil;
- relationship penting sesuai kondisi environment.
Graph analysis yang dibangun dari data stale dapat menghasilkan rekomendasi yang sama stale-nya.
Security tool itu pintar, tetapi belum punya kemampuan membaca pikiran administrator yang lupa menghapus account sejak 2019.
4. Mulai dari High-Value Assets
Cara yang lebih efektif daripada menjelajah graph secara random adalah mulai dari aset yang paling penting.
Dalam AD tradisional, perhatian besar biasanya diberikan pada identity control plane seperti:
- Domain Controllers;
- Domain Admin-equivalent privileges;
- Enterprise Admin-equivalent privileges;
- AD CS atau identity infrastructure yang relevan;
- sistem yang dapat mengendalikan identity plane.
Microsoft menempatkan domain controller dan identitas/admin yang dapat mengontrolnya sebagai Tier 0. Tier ini harus dijaga sekecil mungkin dan dipisahkan dari aktivitas administrasi yang lebih rendah.
Pertanyaannya kemudian:
“Siapa saja yang mempunyai jalur untuk memengaruhi aset Tier 0 ini?”
Bukan hanya:
“Siapa anggota Domain Admins?”
Dua pertanyaan tersebut sangat berbeda.
5. Cari Attack Path, Bukan Sekadar Privileged User
Bayangkan graph menunjukkan:
USER-A
↓ MemberOf
HELPDESK
↓ AdminTo
WS-27
↓ Session Relationship
ADMIN-B
↓ Privileged Relationship
TIER-0-ASSET
Jangan langsung menulis laporan:
“USER-A dapat mengambil alih domain.”
Itu terlalu cepat.
Graph menunjukkan hipotesis attack path berdasarkan relationship yang diketahui. Assessment harus memvalidasi apakah relationship tersebut aktual, reachable, relevan, dan benar-benar mempunyai dampak seperti yang diperkirakan.
Kita perlu bertanya:
- apakah membership masih aktif?
- apakah local admin relationship benar?
- apakah session data masih relevan?
- apakah endpoint memiliki kontrol tambahan?
- apakah credential protection mengubah feasibility path?
- apakah segmentation atau authentication policy memutus jalur tersebut?
BloodHound membantu menemukan pertanyaan. Assessor tetap harus mencari jawabannya.
6. Shortest Path Bukan Selalu Highest Risk
Fitur graph membuat shortest path terlihat menggoda.
Dua hop menuju privileged asset memang tampak lebih seram daripada tujuh hop.
Tetapi risk bukan hanya jumlah edge.
Pertimbangkan juga:
- likelihood;
- privilege yang diperlukan;
- prerequisite;
- stability relationship;
- apakah membutuhkan user interaction;
- monitoring coverage;
- business criticality;
- compensating controls.
Path empat hop yang sangat reliable bisa lebih berbahaya daripada path dua hop yang bergantung pada kondisi langka.
Jadi jangan menjadikan graph seperti Google Maps lalu memilih rute tercepat tanpa melihat apakah jalannya sebenarnya ditutup.
Cheat Sheet Analisis BloodHound
Cheat sheet di sini sengaja berfokus pada pertanyaan analitis, bukan recipe eksploitasi.
Inventory
[ ] Domain dan trust teridentifikasi
[ ] High-value assets ditandai
[ ] Privileged groups direview
[ ] Stale objects diidentifikasi
[ ] Collection timestamp dicatat
Privilege Relationship
[ ] Direct privileged membership
[ ] Nested group membership
[ ] Local admin relationship
[ ] Delegated ACL
[ ] GPO control relationship
[ ] Administrative session exposure
[ ] Cross-tier credential exposure
Attack Path Review
Start Node → Relationship → Intermediate Asset → Privileged Context
Untuk setiap path, catat:
Source : account / group / computer
Destination : high-value asset
Relationships : edge yang membentuk path
Prerequisite : kondisi yang diperlukan
Evidence : data collector + validasi manual
Detection : telemetry yang tersedia
Mitigation : edge mana yang harus diputus
Ini jauh lebih berguna untuk laporan dibanding screenshot graph tanpa penjelasan.
Studi Kasus: Helpdesk yang Terlalu Dekat dengan Tier 0
Bayangkan organisasi mempunyai group Helpdesk-Workstation.
Tujuannya wajar: tim support membutuhkan administrative access ke workstation user.
Kemudian BloodHound menunjukkan pola:
Helpdesk-Workstation
↓
Admin rights on many endpoints
↓
Privileged admin session appears on one endpoint
↓
Potential path toward higher privilege
Masalah sebenarnya bukan “Helpdesk jahat”.
Masalahnya adalah trust boundary.
Account berprivilege tinggi seharusnya tidak menggunakan workstation dengan trust level lebih rendah untuk aktivitas administratif. Microsoft juga menekankan bahwa sistem dengan trust lebih rendah tidak boleh menjadi jalur untuk memengaruhi sistem dengan trust lebih tinggi, dan privileged administration perlu dipisahkan menggunakan model tiering/secure administrative hosts.
Apa yang Kita Validasi?
Pertama, pastikan relationship masih aktual.
Lalu review:
- mengapa privileged admin login ke endpoint tersebut;
- apakah credential privileged terekspos pada Tier 2 workstation;
- apakah admin menggunakan account yang sama untuk aktivitas sehari-hari;
- apakah ada PAW/secure administrative workstation;
- apakah logon restriction diterapkan;
- apakah local admin rights terlalu luas.
Temuannya Bukan “BloodHound Menemukan Path”
Temuan yang lebih matang berbunyi kira-kira:
Privileged administrative identity digunakan pada endpoint dengan trust level lebih rendah yang juga dapat dikelola oleh support role, sehingga trust boundary antar-tier melemah dan meningkatkan risiko credential exposure serta privilege escalation path.
Nah, itu baru menjelaskan risikonya.
Attack → Evidence → Detection → Hardening
Sekarang kita gunakan pola khas seri ini.
Attack / Activity
Dalam assessment, directory relationship dikumpulkan dan dianalisis untuk mencari jalur dari principal berprivilege rendah menuju aset berprivilege tinggi.
Evidence
Evidence yang relevan dapat berupa:
- group membership;
- ACL dan delegated permission;
- local administrator assignment;
- GPO relationship;
- authentication/session evidence yang memang termasuk scope;
- perubahan membership privileged group;
- administrative logon pada host dengan trust level lebih rendah.
Simpan timestamp dan sumber data. Relationship tanpa waktu sering sulit dibedakan antara kondisi aktif dan artefak lama.
Detection
Blue Team sebaiknya tidak mencoba “mendeteksi BloodHound” hanya berdasarkan nama executable.
Nama file gampang berubah. Behavior lebih berguna.
Perhatikan aktivitas seperti:
- lonjakan LDAP query dari workstation yang biasanya tidak melakukan directory inventory;
- enumeration banyak user/group/computer dalam waktu singkat;
- query ACL atau relationship directory yang tidak biasa;
- privileged account login ke workstation biasa;
- perubahan membership group berprivilege;
- perubahan ACL pada object sensitif;
- penggunaan administrative credential lintas trust tier.
Baseline penting. Identity management platform dan inventory tool yang sah juga melakukan banyak directory query.
Detection tanpa context akan menghasilkan alert sebanyak notifikasi grup keluarga setelah Lebaran.
Hardening
Tujuan remediation bukan “blok BloodHound”.
Kalau graph menunjukkan attack path, yang harus diputus adalah relationship berisiko.
Contohnya:
- hapus excessive privilege;
- review nested group;
- pisahkan account administratif dari account sehari-hari;
- gunakan secure administrative host / PAW;
- batasi privileged logon berdasarkan tier;
- kurangi local administrator exposure;
- review delegated ACL;
- lindungi Domain Controllers dan identity infrastructure;
- audit privileged groups secara berkala;
- terapkan least privilege;
- monitor perubahan pada Tier 0.
Microsoft secara eksplisit merekomendasikan least-privilege administrative model, secure administrative hosts, perlindungan Domain Controllers, dan pemisahan privilege berdasarkan trust tier.
Perspektif Blue Team: Graph Bisa Menjadi Defensive Tool
Ini bagian menariknya.
BloodHound sering diasosiasikan dengan Red Team, padahal graph privilege sangat berguna bagi defender.
Blue Team dapat menggunakannya untuk pertanyaan seperti:
- account mana yang terlalu dekat dengan Tier 0?
- apakah ada group nesting yang tidak disengaja?
- workstation mana yang sering menjadi tempat privileged session?
- apakah remediation benar-benar memutus attack path?
- apakah perubahan ACL baru menciptakan jalur baru?
Dengan kata lain, graph dapat digunakan sebagai continuous exposure review.
Bayangkan setelah remediation kita melakukan collection ulang.
Sebelum:
User → Helpdesk → Workstation → Privileged Context → Tier 0
Sesudah:
User → Helpdesk → Workstation
X
path terminated
Itu jauh lebih meyakinkan daripada checklist yang hanya mengatakan “permission sudah diperbaiki”.
Hardening dengan Tier Model
Microsoft AD DS tier model membagi administrative trust menjadi Tier 0, Tier 1, dan Tier 2.
Secara sederhana:
Tier 0
Identity control plane: Domain Controllers dan principal/sistem yang dapat mengontrolnya.
Tier 1
Enterprise servers dan applications.
Tier 2
End-user workstations, standard user support, dan device administration.
Prinsip pentingnya:
credential dari tier yang lebih tinggi jangan terekspos pada tier yang lebih rendah.
Kalau Domain Admin dipakai browsing email di workstation user, graph paling cantik sekalipun tidak akan menyelamatkan desain privilege tersebut.
Microsoft juga merekomendasikan menjaga Tier 0 sekecil mungkin, memisahkan tugas, tidak menggunakan shared credential lintas tier, dan menggunakan PAW sesuai tier.
Best Practices Saat Menggunakan BloodHound
1. Collection Sesuai Objective
Jangan mengumpulkan semuanya hanya karena bisa.
2. Treat Output as Sensitive
Graph dapat mengungkap struktur privilege organisasi. Lindungi storage, access, retention, dan disposal-nya.
3. Validate Critical Edges
Semakin besar impact sebuah path, semakin penting validasi manual.
4. Catat Timestamp
Session dan relationship tertentu dapat berubah cepat.
5. Prioritaskan Choke Point
Kadang satu permission yang salah menjadi edge bersama bagi banyak attack path. Memutus satu choke point bisa menghilangkan banyak risiko sekaligus.
6. Jangan Hanya Fokus pada Domain Admins
High-value identity infrastructure lebih luas daripada satu group.
7. Re-collect Setelah Remediation
Kalau graph digunakan untuk menemukan masalah, gunakan graph lagi untuk membuktikan masalahnya benar-benar hilang.
8. Hubungkan dengan Logging
Attack path yang tidak dapat dideteksi adalah blind spot. Review telemetry pada setiap titik penting.
Kesalahan Umum
“Ada Path Berarti Pasti Exploitable”
Tidak. Path adalah hipotesis berbasis relationship yang perlu divalidasi.
“Shortest Path Pasti Paling Berbahaya”
Belum tentu. Risk dipengaruhi feasibility, prerequisite, monitoring, dan business impact.
“Blok Tool-nya Saja”
Attacker tidak wajib menggunakan BloodHound. Relationship yang salah tetap ada meski executable diblokir.
“Semua Admin Masuk Tier 0”
Ini justru memperbesar Tier 0. Tier 0 harus sekecil mungkin.
“Sudah Hapus User, Beres”
Belum tentu. Group nesting, delegated ACL, service account, GPO, atau relationship lain masih bisa menyisakan path.
Dari Graph ke Laporan
Screenshot graph bagus untuk ilustrasi, tetapi laporan harus menjelaskan cerita.
Gunakan format seperti:
Finding : Cross-tier privileged credential exposure
Source : Support-managed workstation
Target : Privileged identity context
Path : relationship chain tervalidasi
Impact : peningkatan risiko privilege escalation
Evidence : graph + directory + logon evidence
Detection Gap : privileged logon tidak dibatasi/dimonitor
Remediation : tier separation + PAW + logon restriction
Retest : collection ulang setelah remediation
Manajemen mendapat impact.
Engineer mendapat edge yang harus diperbaiki.
SOC mendapat behavior yang harus dimonitor.
Itulah laporan yang bisa dipakai, bukan sekadar dipajang.
Penutup
BloodHound mengajarkan satu pelajaran penting: security problem sering berada pada relationship, bukan pada satu object.
User biasa mungkin aman. Workstation mungkin patched. Group mungkin dibuat untuk alasan operasional yang masuk akal. Tetapi ketika semuanya dirangkai, bisa muncul attack path yang tidak pernah direncanakan siapa pun.
Karena itu jangan melihat BloodHound sebagai “tool untuk mencari jalan ke Domain Admin”. Itu terlalu sempit.
Gunakan sebagai alat untuk menjawab pertanyaan yang lebih berguna:
Siapa dapat memengaruhi siapa, melalui relationship apa, dan edge mana yang harus kita putus supaya compromise berhenti sebelum mencapai identity control plane?
Artikel berikutnya, #07 SecretsDump, akan membahas konsep credential exposure pada Windows/Active Directory dari sudut assessment yang terkontrol—termasuk evidence, detection, dan mengapa credential hygiene jauh lebih penting daripada sekadar memblokir satu tool.
Referensi Resmi
- BloodHound Community Edition Documentation — https://bloodhound.specterops.io/
- SpecterOps BloodHound — https://github.com/SpecterOps/BloodHound
- Microsoft: Best practices for securing Active Directory — https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/plan/security-best-practices/best-practices-for-securing-active-directory
- Microsoft: AD DS Tier Model — https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/tier-model
- Microsoft: Privileged access strategy — https://learn.microsoft.com/en-us/security/privileged-access-workstations/privileged-access-strategy
Post Terkait
#05 SQLMap Cheat Sheet: SQL Injection Testing untuk Security Assessment
SQLMap Cheat Sheet untuk validasi SQL injection secara terukur: setup lab, workflow, evidence, detection Blue Team, para...
#04 Subfinder + HTTPX: Subdomain Enumeration dan HTTP Probing untuk Reconnaissance
Gabungkan Subfinder dan httpx untuk menemukan subdomain, memetakan live HTTP services, melakukan triage attack surface,...
#03 Naabu Cheat Sheet: Fast Port Discovery dan Reconnaissance Pipeline untuk Security Assessment
Naabu Cheat Sheet untuk fast port discovery, reconnaissance pipeline, integrasi Nmap, studi kasus exposure, detection Bl...