Теория
собирает данные из (кто в группе, кто подключён к какому компьютеру, к какому ACL есть доступ) и строит граф отношений. Атака больше не «где есть слабая учётка» — а поиск пути в графе от точки, которой вы управляете, до группы Admins.
Edges, которые нужно знать
- MemberOf — принадлежность к группе.
- AdminTo — пользователь/группа являются админами на компьютере.
- HasSession — пользователь сейчас подключён к компьютеру (возможность украсть учётные данные из памяти).
- CanRDP / CanPSRemote — удалённый доступ к компьютеру.
- — право репликации на домене — главный приз.
- WriteDacl / AddMember / AddKeyCredentialLink — права для «самоапгрейда» в цепочке.
Цепочка: bob, HasSession, WORKSTATION1, AdminTo, svc_helpdesk, CanRDP, SRV-APP1, MemberOf, G-Deploy, DCSync, CORP.LOCAL. Каждая стрелка — Edge (отношение). Защита: запустить тот же запрос и разорвать каждый путь до злоумышленника.
Практика — сбор графа
Импортируйте zip в и проверьте: Pre-built Analytics → «Find Shortest Paths to Admins».
Чтение пути шаг за шагом
Пример пути: bob → HasSession → WORKSTATION1 → AdminTo → svc_helpdesk → CanRDP → SRV-APP1 → MemberOf → G-Deploy → → CORP.LOCAL.
- 1. bob подключён к WORKSTATION1 (HasSession) — если контролируем bob, в памяти компьютера есть дополнительные учётные данные для кражи.
- 2. svc_helpdesk — админ на WORKSTATION1 (AdminTo) — с правами на компьютер извлекаем хэш svc_helpdesk из SAM/.
- 3. svc_helpdesk может RDP на SRV-APP1 (CanRDP) и он там подключён — дополнительные учётные данные в памяти.
- 4. Тот, кто подключён к SRV-APP1, принадлежит G-Deploy, у которой есть на домене.
- 5. = захват домена — извлекаем все хэши через репликацию.
Полезные Cypher-запросы
Обнаружение и защита — BloodHound это и защитный инструмент
- Запустите «Shortest Paths to Admins» до атакующего — разрыв каждого пути (удаление AdminTo, смена пароля, закрытие лишних session) — настоящая митигация.
- Найдите в логах именно эти связи: какой svc_helpdesk входит RDP на серверы (4624 Type 10), кто делает без причины.
Митигация
- Чините связи: убирайте лишние AdminTo, отключайте лишнее delegation, малое число держателей .
- Для каждой сервисной учётки с высокими правами — принцип минимума, PAW для управления и мониторинг каждого использования.
- Вернитесь к графу после исправления и проверьте, что путь исчез — доказательство, что митигация сработала.