? Атака Domain Dump позволяет злоумышленнику сдампить домен для получения информации о пользователях и группах, а также для последующего построения пути компрометации домена.
Теория
*данная статья будет рассмотрена на примере утилиты bloodhound *
Стадии работы на примере bloodhound:
Аутентификация через указанный протокол
Сбор информации о количестве лесов, доменов и хостов
Сбор информации о пользователях, группах, политиках и т. д.
Попытки обращений к компьютерам домена
Проверка активных пользователей
Процесс удаленного дампа может быть осуществлен с помощью Kerberos или NTLM аутентификации. В случае, если был выбран Kerberos и произошла ошибка получения TGT, метод авторизации будет автоматически изменен на NTLM.
Трафик проведенной атаки выглядит следующим образом:
![](https://habrastorage.org/getpro/habr/upload_files/13e/45d/7b6/13e45d7b6026043f4bb0902082863af0.png)
![](https://habrastorage.org/getpro/habr/upload_files/ddc/36a/0dd/ddc36a0dde6d1a8462abbb6676d32251.png)
![](https://habrastorage.org/getpro/habr/upload_files/e44/c6b/bd4/e44c6bbd4f834187c3d638c9e1b3a634.png)
Таким образом, от сервера нам прилетает вся информация, в данном случае, о пользователе «Администратор», которая представлена в виде обычного текста и HEX формата.
Практика
Дамп через Kerberos аутентификацию
python bloodhound.py -u ldapdump-user -p Bloodhound? -ns 192.168.1.1 -d test.local -c ALL --zip --auth-method kerberos -k
![](https://habrastorage.org/getpro/habr/upload_files/3cf/629/a65/3cf629a65fb90924c53287b82baa2a76.png)
Как видно, 2 строка вывода программы проинформировала нас о получении TGT, что свидетельствует о том, что аутентификация через Kerberos была успешно выполнена.
Трафик атаки
Как обычно, начинаем с Kerberos аутентификации. Поскольку дальше идет работа с LDAP, то и в TGS_REQ SNameString будет содержать ldap
![](https://habrastorage.org/getpro/habr/upload_files/ab7/b19/6b3/ab7b196b3c95ffec4ba5377b9e14e3e6.png)
![](https://habrastorage.org/getpro/habr/upload_files/4ff/49c/8b8/4ff49c8b8739924857ae926d75f256d8.png)
После этого, идет аналогичный запрос TGS_REQ, но уже для обращения к SMB — SNameString: cifs
![](https://habrastorage.org/getpro/habr/upload_files/e41/616/999/e41616999f8ea448d3e7f865ebd7ba24.png)
![](https://habrastorage.org/getpro/habr/upload_files/2a5/f05/c60/2a5f05c60beaec9e85a39ac982fd4125.png)
Дамп через NTLM аутентификацию
python bloodhound.py -u ldapdump-user -p Bloodhound? -ns 192.168.1.1 -d test.local -c ALL --zip --auth-method ntlm
![](https://habrastorage.org/getpro/habr/upload_files/622/ac9/af4/622ac9af499f264bc09a52a36a0b1c87.png)
Трафик атаки
Сначала идет NTLM аутентификация, сразу после которой идут LDAP запросы.
![](https://habrastorage.org/getpro/habr/upload_files/616/346/2b3/6163462b387d0975ea3aa5f146990772.png)
Осуществление еще одной NTLM аутентификации для взаимодействия с SMB.
![](https://habrastorage.org/getpro/habr/upload_files/203/4a7/760/2034a776049e25eee72e59d2c3e12bd0.png)
Локальный дамп
Также, если есть необходимость выявить всех пользователей домена и информацию о них, можно выполнить локальный дамп с помощью PoSH Get-ADUser -Filter * -Properties DisplayName, EmailAddress, Enabled, LastLogonDate | Format-Table -AutoSize
![](https://habrastorage.org/getpro/habr/upload_files/b01/96f/c53/b0196fc53fc0c519e4839415597f3c50.png)
Артефакты
Как правило, при проведении данной атаки, основным фактором является наличие множества событий MSGID 1644 (Выполнен LDAP запрос), а также MSGID 2889 (Незащищенные привязки LDAP), которые подкрепляются событиями из разделов ниже
![](https://habrastorage.org/getpro/habr/upload_files/3df/f00/01d/3dff0001d3c3dc7360638f67f88e216a.png)
Дамп через Kerberos аутентификацию
![](https://habrastorage.org/getpro/habr/upload_files/359/17d/337/35917d337607dfb26f8dd8e47e017617.png)
Дамп через NTLM аутентификацию
![](https://habrastorage.org/getpro/habr/upload_files/dbd/43e/c8f/dbd43ec8f18478c93717c924482af559.png)
Вывод
Как видно, основной последовательностью событий в журнале безопасности Windows при разных протоколах аутентификации служат:
Вход в систему (как правило, несколько раз подряд)
-
Обращения к службам:
Для Kerberos в TGS_REQ: ldap и cifs в SNameString
Для NTLM: ldap и smb
Обращения к шаре \\*\IPC$ с маской 0x1 (чтение данных или перечисление каталогов)
Выход из системы (количество эквивалентно входам)
Профит
Получаем визуализацию полученных данных и ищем доступные пути компрометации домена
![](https://habrastorage.org/getpro/habr/upload_files/467/1af/313/4671af31368b7f499f9b7163359da970.png)