Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
DCSYNCMonitor — Мониторит атаки DCSYNC и DCSHADOW и создаёт пользовательские события Windows для этих событий. | Kitploit
Инструменты/GitHubGitHub/shellster/dcsyncmonitor
Оборонительные ИнструментыСетевая безопасностьОбнаружение ВторженийРеагирование на Инциденты
GitHubshellster/dcsyncmonitor

DCSYNCMonitor

Мониторит атаки DCSYNC и DCSHADOW и создаёт пользовательские события Windows для этих событий.

Репозиторий
141348 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

DCSYNCMonitor

Описание

Этот инструмент представляет собой приложение/службу, которое может быть развернуто на контроллерах домена для оповещения о попытках синхронизации контроллеров домена. При обнаружении попытки инструмент записывает событие в журнал событий Windows. Эти события могут быть скоррелированы в SIEM. Кроме того, этот инструмент может принимать список допустимых IP-адресов контроллеров домена и в такой конфигурации оповещать только в том случае, если попытка синхронизации домена поступает с IP-адреса, не являющегося контроллером домена. Инструмент предназначен для предоставления командам Blue Team способа борьбы с атаками DC SYNC и DC SHADOW без коммерческих инструментов, таких как Microsoft ATA или сложных IDS/IPS.

Краткое видео на Youtube: https://www.youtube.com/watch?v=oLND9QZfaJc

Инструкция по установке

Для установки этого инструмента вы можете использовать либо предварительно собранные бинарные файлы, либо собрать инструмент самостоятельно. Ссылка на предварительно собранные бинарные файлы здесь:

32-битный сервис: https://github.com/shellster/DCSYNCMonitor/raw/master/Release/DCSYNCMONITORSERVICE.exe

64-битный сервис: https://github.com/shellster/DCSYNCMonitor/raw/master/x64/Release/DCSYNCMONITORSERVICE.exe

Вам потребуется установленный Winpcap или Npcap на вашем контроллере домена. Winpcap должен работать, но не рекомендуется, так как методы захвата пакетов не так эффективны и полны, как NPcap. Этот инструмент был лишь кратко протестирован с Winpcap.

Чтобы установить Npcap, загрузите установщик отсюда: https://nmap.org/npcap/

Убедитесь, что отмечены следующие параметры:

  • Автоматически запускать драйвер Npcap при загрузке системы
  • Ограничить доступ к драйверу Npcap только администраторам

После установки необходимо перезагрузить контроллер домена.

Npcap не устанавливает библиотеки поддержки DLL в путь поиска DLL системы, поэтому после установки необходимо выполнить следующие задачи:

root@kitploit:~
copy "%WINDIR%\System32\Npcap\*.dll" "%WINDIR%\System32\"

#Если применимо (32-битный сервис на 64-битной системе):
copy "%WINDIR%\SYSWOW64\Npcap\*.dll" "%WINDIR%\SYSWOW64\"

Примечание: Если предыдущий шаг не выполнен, вы будете получать ошибки об отсутствии wpcap.dll или Packet.dll при попытке запуска инструмента.

Теперь скопируйте DCSYNCMONITOR.EXE из этого проекта в подходящее место. Мы рекомендуем %WINDIR%\SYSTEM32 для 32-битных систем или 64-битных систем с 64-битным сервисом, или %WINDIR%\SYSWOW64, если вы используете 32-битный сервис на 64-битной системе.

Теперь инструмент можно запустить. Однако вы можете запустить его одним из двух способов:

Без файла конфигурации

В этом режиме инструмент будет записывать событие предупреждения DCSYNCALERT в журнал событий Windows Application каждый раз, когда новый IP-адрес (не наблюдавшийся в течение последних пяти минут) пытается выполнить DC SYNC против контроллера домена. Это будет включать легитимные действия синхронизации между контроллерами домена.

С файлом конфигурации

Файл конфигурации с именем "dc_ip_list.conf" может быть размещен в том же каталоге, что и инструмент. Если этот файл существует, он должен содержать один IPv4 (или длинную форму IPv6) адрес на строку. Инструмент загружает этот список при запуске. В этом режиме события не будут записываться для попыток DC Sync с совпадающих IP-адресов. Однако, если попытка DC Sync происходит с любого другого IP-адреса, будет записано событие ошибки DCSYNCALERT в журнал событий Windows Application.

Примечание: Изменения в файле dc_ip_list.conf не вступят в силу до остановки и повторного запуска службы.

Обычный способ использования этого инструмента — установить его как службу. После размещения инструмента в правильной папке это легко можно сделать, выполнив:

root@kitploit:~
DCMONITORSERVICE.exe -install

После установки службы вам необходимо запустить ее вручную из меню Services.msc или с помощью соответствующих команд net или sc. Она будет автоматически запускаться при последующих перезагрузках.

Если вам нужно удалить службу, выполните следующую команду:

root@kitploit:~
DCMONITORSERVICE.exe -remove

Наконец, чтобы запустить инструмент в автономном режиме без установки службы (особенно полезно для отладки):

root@kitploit:~
DCMONITORSERVICE.exe -standalone

Скриншоты

События предупреждения DC SYNC возникают, когда не предоставлен список допустимых IP-адресов DC, или когда DC SYNC происходит с допустимого IP-адреса DC:

Пример события предупреждения DCSYNC

События ошибки DC SYNC возникают, когда предоставлен список допустимых IP-адресов DC и DC SYNC происходит с любого другого IP-адреса:

Пример события ошибки DCSYNC

Инструкция по компиляции

Вам потребуется Visual Studio 2015 или более поздняя версия. Подойдет Community (бесплатная) версия. После открытия проекта вы сможете сразу собрать версии Dev и Release как в 32-битном, так и в 64-битном вариантах. Версии Debug не следует развертывать в производственной среде. Они выводят обширную информацию об ошибках и отладке, включая дампы TCP-пакетов (если раскомментировать следующую строку в файле monitor.cpp):

root@kitploit:~
#ifdef _DEBUG
		//debug_print("TCP SRC IP: %s\nData:\n", tcppacket.source_ip.address.c_str());
		//print_payload((const u_char *)tcppacket.data, tcppacket.data_length);
#endif

Версии Release значительно меньше и автоматически удаляют отладочные операторы.

Важные ограничения

Этот инструмент имеет следующие известные ограничения:

  • Инструмент выполняет побайтовое сравнение пакета DSNcChange. Этот шаблон должен быть достаточно надежным, но, вероятно, может быть обойден продвинутым злоумышленником.
  • Инструмент не обрабатывает фрагментацию IPv4. Злоумышленник может теоретически специально сформировать запрос DC SYNC с фрагментацией IPv4, чтобы обойти захват пакетов.
  • Инструмент не обрабатывает расширения пакетов IPv6. Злоумышленник в сети IPv6 может теоретически сформировать запрос DC SYNC, содержащий дополнительные расширения заголовка, или использовать Jumbogram для обхода сигнатур.
  • Инструмент не обрабатывает поврежденные пакеты, которые могут быть правильно или неправильно отброшены ядром.
  • Крайне маловероятно, но может возникнуть ложное срабатывание, если случайный TCP-пакет совпадет с 11-байтовой сигнатурой, которую проверяет этот инструмент.
  • Этот инструмент будет работать только на Server 2008 или более поздних версиях.

Лицензия

Этот инструмент предоставляется под лицензией MIT (см. LICENSE)

Ссылки

  • Значительная информация о разборе пакетов и помощь в кодировании получены с: https://www.tcpdump.org/sniffex.c
  • Шаблон службы C++ Windows взят отсюда: https://code.msdn.microsoft.com/windowsapps/CppWindowsService-cacf4948
  • Следующая страница предоставила значительные рекомендации по записи в журналы событий: https://stackoverflow.com/questions/8559222/write-an-event-to-the-event-viewer

Авторство

Инструмент написан Shelby Spencer:

  • Twitter: shellsterdude
  • Keybase.io: shellster
  • Github: shellster

FusionX любезно предоставил мне время для обновления и доработки этого инструмента, а также платформу для его анонсирования. Однако этот проект полностью принадлежит мне и разработан мной.

Обратная связь

Предложения, отзывы и запросы на слияние приветствуются и поощряются.

Скачать инструмент