Active Directory не просто каталог пользователей или сервис Windows. Это полноценная информационная система, лежащая в основе почти любой корпоративной сети на базе Windows. Но это не просто «хранилище». Active Directory служба каталогов.
Слово «каталог» здесь означает не папку с файлами, а структурированную иерархическую базу данных, в которой каждый объект имеет: уникальное имя (например, CN=Иванов Иван,OU=Бухгалтерия,DC=company,DC=local), атрибуты (имя, фамилия, пароль, номер телефона, права доступа и т.д.), место в иерархии (в каком подразделении, в каком домене, в каком лесу).
Такая структура позволяет не просто хранить данные, а быстро находить, проверять и управлять ими даже если в системе сотни тысяч объектов.
Active Directory предназначена для сбора, хранения, обработки и предоставления информации обо всех участниках инфраструктуры: пользователях, компьютерах, принтерах, группах, политиках безопасности и правах доступа. Без неё невозможна стабильная, безопасная и масштабируемая работа даже средней компании.
Но именно эта централизация делает её главной целью для атак. Поэтому понимание Active Directory требует не только знания её структуры, но и глубокого осознания её уязвимостей и чёткого плана действий на случай, если защита будет нарушена.
Архитектура: как строится управляемая сеть
Вся структура Active Directory строится вокруг леса высшего уровня доверия и безопасности. Всё, что находится внутри одного леса, разделяет общую схему данных, глобальный каталог и политику безопасности.
Лес может содержать несколько доменов независимых административных единиц с собственными контроллерами домена, политиками паролей и пулами идентификаторов безопасности (SID).
Домены могут быть организованы в деревья, если их DNS-имена логически связаны, например company.local и hr.company.local.
Внутри каждого домена администратор создаёт подразделения (Organizational Units, OU) логические контейнеры для группировки объектов. OU не влияют на безопасность напрямую, но позволяют гибко применять групповые политики и делегировать права управления.
Например, администратор филиала может управлять только своей OU, не имея доступа к остальной сети. Отдельно от логической структуры существует сайт физическое представление сети. Он описывает расположение серверов и пользователей в реальном мире (офисы, дата-центры) и помогает направлять запросы к ближайшему контроллеру домена, минимизируя задержки и нагрузку на каналы связи.
1. Домен (Domain) отдельная зона управления. Внутри одного домена действуют одни и те же правила: например, одинаковая политика паролей (сколько символов, как часто менять), общие настройки безопасности и единая база пользователей. Если в компании два отдела с разными требованиями к безопасности (например, IT и финансы), их могут разместить в разных доменах даже если они в одной сети.
2. Контроллер домена (Domain Controller) специальный сервер с Windows Server, на котором установлена Active Directory. Он хранит базу данных и отвечает на запросы аутентификации («это действительно Иван Иванов?»). Таких серверов обычно несколько -для отказоустойчивости. Если один сломается, другой продолжит работать.
3. Подразделения (Organizational Units — OU) это просто папки внутри домена, которые помогают группировать пользователей и компьютеры.
Например: OU «Москва» → пользователи из московского офиса OU «Бухгалтерия» → все бухгалтеры OU «Ноутбуки» → все мобильные устройства Администратор может применять настройки сразу ко всей папке. Например: «всем в OU “Бухгалтерия” запретить устанавливать программы».
4. Сайт (Site) физическое расположение например, офис в Москве и офис в Новосибирске. Active Directory использует сайты, чтобы направлять пользователя к ближайшему контроллеру домена. Это ускоряет вход в систему и снижает нагрузку на сеть. Сайты не влияют на права доступа или имена пользователей они нужны только для эффективного использования сетевых ресурсов. Если у вас один офис у вас скорее всего, один сайт.
5. Лес (Forest) самый высокий уровень в Active Directory. Лес объединяет один или несколько доменов, которые доверяют друг другу. То есть пользователь из одного домена может получить доступ к ресурсам другого домена в том же лесу если ему разрешено.
Если две компании сливаются, но не хотят полностью объединять свои системы, они могут оставить два леса и настроить ограниченное доверие между ними.
Когда компьютер включается в корпоративной сети, его первая задача найти контроллер домена. Для этого он обращается к службе DNS. Компьютер отправляет в DNS запрос: «Где находятся контроллеры домена для домена company.local?» и получает точные IP-адреса серверов, на которых работает Active Directory. После этого начинается процесс аутентификации.
Здесь используется протокол Kerberos, работающий на порту 88. Это сложный, но достаточно безопасный механизм, при котором пароль никогда не передаётся по сети. Вместо этого компьютер и сервер обмениваются зашифрованными сообщениями, и в случае успеха пользователь получает цифровой билет TGT (Ticket-Granting Ticket). Билет становится его удостоверением личности в сети: при доступе к почте, файловому серверу или другому ресурсу он предъявляется вместо повторного ввода пароля.
Для поиска информации например, телефона коллеги или списка принтеров используется протокол LDAP через порт 389. Он позволяет читать и изменять данные в каталоге, делая Active Directory единым источником правды для всей ИТ-инфраструктуры.
Если требуется защищённое соединение, используется LDAPS (порт 636) та же функциональность, но с шифрованием трафика. Наконец, при загрузке компьютер подключается к сетевой папке SYSVOL через протокол SMB (порт 445) и загружает групповые политики правила, определяющие, какие программы можно устанавливать, как настраивается рабочий стол, где хранятся файлы.
Всё это происходит автоматически, без участия пользователя, обеспечивая единообразие и безопасность.
Active Directory использует порты:
? DNS: TCP/UDP 53 — поиск контроллеров домена.
? Kerberos: TCP 88 — аутентификация пользователей и устройств.
⏱️ NTP: TCP/UDP 123 — синхронизация времени для Kerberos.
? RPC: TCP/UDP 135 — управление и репликация данных.
? LDAP: TCP 389 — запросы к каталогу AD.
? SMB: TCP 445 — доступ к файлам, репликация SYSVOL.
? LDAPS: TCP 636 — защищенные запросы к каталогу.
? Global Catalog: TCP 3268/3269 — поиск объектов в лесу AD.
? Динамические RPC: TCP/UDP 49152–65535 — репликация и управление.
А что насчёт ping и nslookup?
Эти две простые команды лучшие друзья любого администратора при диагностике проблем в сети.
nslookup напрямую опрашивает DNS-сервер. Вы говорите ему: «DNS-сервер, скажи мне IP-адрес для dc01.company.local». Он отправляет DNS-запрос и возвращает ответ. Это самый надёжный способ проверить, знает ли DNS о вашем сервере.
ping более комплексная команда. Она сначала пытается разрешить имя в IP-адрес, используя все доступные системе методы (включая локальный кэш DNS, файл hosts и даже NetBIOS), а затем отправляет реальные сетевые пакеты на этот адрес, чтобы проверить, «жив» ли сервер.
Простыми словами: nslookup отвечает на вопрос «Что DNS думает об этом имени?», а ping на вопрос «Может ли моя система сейчас связаться с этим именем?». Часто nslookup работает, потому что он напрямую опрашивает DNS, в то время как ping может использовать устаревшую информацию из кэша, что приводит к разным результатам и помогает локализовать проблему.
Active Directory по умолчанию содержит несколько встроенных групп безопасности, члены которых обладают расширенными правами.
Группа Administrators даёт полный контроль над отдельным компьютером; если речь идёт о контроллере домена, этот доступ распространяется на весь домен.
Группа Domain Admins предоставляет административные права на все серверы и рабочие станции в домене и автоматически входит в локальную группу Administrators на каждом контроллере домена. Автоматически добавляются в локальную группу Administrators на всех компьютерах, присоединённых к домену.
Группа Enterprise Admins существует только в корневом домене леса и даёт полные права на управление всем лесом Active Directory.
Группа Account Operators могут управлять учётными записями, но не могут изменять права высокопривилегированных групп.
Группы безопасности защищены специальным механизмом под названием AdminSDHolder. Каждые 60 минут Active Directory автоматически перезаписывает дескрипторы безопасности (права доступа) этих групп и их членов, используя эталонный защищённый шаблон с объекта AdminSDHolder. Что предотвращает попытки злоумышленника или ошибочного администратора изменить права доступа к критически важным учётным записям.
Начиная с Windows Server 2012 R2, Microsoft ввела специальную группу Protected Users. Её членство накладывает строгие ограничения на процесс аутентификации, что значительно усложняет кражу учётных данных. Пользователи, входящие в эту группу, не могут использовать устаревший протокол NTLM только Kerberos. Им запрещено делегирование учётных данных, что исключает передачу прав другим службам. Все билеты Kerberos для них должны шифроваться с использованием алгоритма AES более слабые методы отключены. Кроме того, максимальный срок жизни билета Kerberos для таких пользователей ограничен четырьмя часами, что резко сокращает время, в течение которого украденный билет может быть использован. Эту группу рекомендуется использовать для всех привилегированных учётных записей администраторов, операторов, критических служб.
AppLocker: контроль над тем, что может запускаться в системе
Даже при наличии строгих политик доступа злоумышленник может попытаться запустить вредоносные утилиты, такие как Mimikatz, Rubeus или Kekeo, чтобы извлечь хэши паролей из памяти или создать поддельные билеты Kerberos. Чтобы предотвратить это, используется технология AppLocker. AppLocker позволяет определять, какие программы, скрипты и установщики разрешено запускать в системе.
Администратор может создать политику, которая по умолчанию запрещает запуск любого программного обеспечения, а затем явно разрешает только доверенные приложения по их цифровой подписи, хэшу файла или пути установки.
Особенно строгие правила AppLocker следует применять на контроллерах домена, серверах управления и рабочих станциях привилегированных пользователей, где риск компрометации наиболее критичен.
Одной из самых опасных атак на Active Directory является компрометация учётной записи KRBTGT. Эта скрытая системная учётная запись хранит ключ, которым подписываются все билеты Kerberos в домене.
Если злоумышленник получает хэш её пароля например, через дамп памяти контроллера домена он может создать так называемый «золотой билет». Это поддельный билет выдачи билетов (TGT), который выглядит абсолютно легитимным для любого контроллера домена.
Злоумышленник может указать в нём любое имя пользователя даже несуществующее, назначить любые членства в группах (включая Enterprise Admins) и установить срок действия до 10 лет.
Поскольку билет криптографически корректен, система не может отличить его от настоящего. На этом этапе вся инфраструктура считается полностью скомпрометированной. План ликвидации: как восстановить контроль
Стандартная смена паролей не решает проблему. Необходима строго последовательная процедура. Первым шагом является немедленный аудит всех привилегированных учётных записей, особенно членов групп Domain Admins и Enterprise Admins. Их права следует отозвать, а сами учётные записи заблокировать, поскольку их пароли, скорее всего, известны злоумышленнику. Самый важный этап двойной сброс пароля учётной записи KRBTGT.
При первом сбросе Active Directory сохраняет предыдущий пароль в истории, чтобы не нарушить работу легитимных сессий. Поэтому «золотой билет», созданный со старым хэшем, остаётся действительным. Чтобы полностью аннулировать его, необходимо выждать время, превышающее максимальный срок жизни TGT в домене (по умолчанию 10 часов), чтобы все легитимные сессии завершились. Только после этого выполняется второй сброс пароля. Теперь в истории остаётся только один старый пароль от первого сброса и все билеты, подписанные более ранними ключами, становятся недействительными.
Для выполнения этой процедуры рекомендуется использовать официальный скрипт Microsoft New-KrbtgtKeys.ps1, размещённый на GitHub. Он автоматизирует процесс и минимизирует риск ошибки.
После второго сброса необходимо принудительно завершить все пользовательские сессии например, через перезагрузку критически важных серверов или команды выхода из системы. Это гарантирует, что ни у кого не останется кэшированных старых билетов.
В крайних случаях, если целостность системы вызывает сомнения, следует восстанавливать контроллеры домена из чистых резервных копий, созданных до момента компрометации. Восстановление из копии, сделанной после атаки, лишь закрепит компрометацию.
Проактивная защита: как предотвратить атаку
Лучшая защита - это предотвращение. Для этого необходимо регулярно менять пароль учётной записи KRBTGT не реже чем раз в 180 дней, а также после любого инцидента безопасности или ухода привилегированного администратора.
Все привилегированные учётные записи должны использовать многофакторную аутентификацию (MFA). Исследования Microsoft показывают, что MFA блокирует более 99,9% атак на учётные данные.
Следует включить расширенный аудит и отслеживать ключевые события Windows, такие как событие 4769 запрос сервисного билета Kerberos. Особое внимание нужно уделять аномалиям: запросы билетов для несуществующих пользователей, активность в нерабочее время, необычные географические локации.
На компьютерах с Windows 10/11 Enterprise и Windows Server 2016 и новее следует включить Credential Guard технологию, которая изолирует хэши паролей в защищённой области памяти, делая их недоступными для инструментов вроде Mimikatz.
В Windows Server 2025 Credential Guard усилен интеграцией с виртуализацией, обеспечивая лучшую защиту в гипервизорах.
Наконец, для выполнения административных задач следует использовать выделенные рабочие станции привилегированного доступа (PAW). Эти компьютеры настроены максимально безопасно, не используются для повседневных задач (почта, веб-серфинг), и тем самым изолируют учётные данные администраторов от основных векторов атак фишинга, вредоносных сайтов и случайных ошибок. Active Directory не просто технология. Это архитектура доверия, в которой каждая деталь имеет значение: от правильной настройки DNS до строгого контроля за членством в группе Domain Admins. Когда атака происходит, важно не паниковать, а действовать по чёткому плану. А когда атака предотвращена продолжать укреплять защиту, потому что в мире кибербезопасности статичность означает уязвимость.