Tw-city.info

IT Новости
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как поднять контроллер домена 2020

Как установить Active directory в windows server 2008R2 / Как установить контроллер домена

Как установить Active directory в windows server 2008R2 / Как установить контроллер домена

Добрый день уважаемые читатели блога pyatilistnik.org, сегодня хочется рассказать в данной статье как установить контроллер домена. Когда то я тоже начинал мечтать об админстве, и на первой же работе я увидел, что же такое AD, осознал всю мощь MS :). Шло время я немного вырос в своих глазах в профессиональном плане и решил сделать тестовый стенд, о том как его делать будет отдельная статья, и первое что я решил попробовать поставить свой домен.

Когда вы уже поставили windows server 2008R2 все обновили настроили статику назвали свой компьютер как нужно (об этом тут), у меня это будет для примера DC, то можно приступать.

Как установить active directory

Открываем Диспетчер сервера, это централизованный и краеугольный инструмент Microsoft по добавлению ролей, но все тоже самое можно сделать и через powershell. Нажимаем добавить роли

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

как установить active directory

Выбираем Доменные службы Active Directory.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-03

Дальше мастер скажет, что нужно поставить компоненты NET.Framework 3.5.1, жмем добавить

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-04

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-05

В следующем окне нас подробно познакомят c Active directory, жмем ДАлее

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-06

Жмем установить. Процесс быстрый буквально пару минут.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-07

Видим, что Active Directory установилась успешно

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-08

После установки в диспетчере ролей мы видим ошибку и ее текст, мол введите в пуске dcpromo.exe и будут вам счастье, так и поступим.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-09

Открываем пуск и пишем dcpromo.exe

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-10

Дальше нас поприветствует мастер установки Active directory. Жмахаем Далее.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-11

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-12

Создаем новый домен в новом лесу.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-13

Придумываем имя нашего домена, я выбрал contoso.com в целях тестового тестирования, вам же хочу посоветовать прочитать статью как правильно выбрать имя домена Active Directory,

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-14

Начнется проверка уникальности имени нового леса.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-15

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-16

Выбираем режим работы домена windows server 2003 , я выбрал этот режим для того чтобы показать как поднимается режим работы, вы же выбирайте сразу 2008R2, чтобы получить все его преимущества о которых позже.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-17

Выбираем уровень леса тоже windows server 2003 по тем же причинам.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-18

Дальше нам скажут, что вам еще поставят DNS сервер. Жмем далее.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-19

Спросят про делегирование, жмем ДА.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-20

В следующем окне, нам покажут и предложат папки размещения Базы данных.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-21

Попросят придумать и ввести пароль Администратор, пароль должен включать в себя большую букву, маленькую и цифру и быть не менее 6 символов.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-22

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

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-24

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-25

После перезагрузки посмотрим в диспетчере сервера какие события произошли и нет ли там ошибок.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-26

Иногда может получиться что сеть видится не как доменная, а как неопознанная. Это происходит когда в настройках ip прописывается днс сервер вида 127.0.0.1. Его нужно сменить на нормальный вида 10.10.10.1.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-27

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-28

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-29

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-30

После чего выключим и включим интерфейс, увидим что все ок и сеть определилась как доменная.

Как установить Active directory в windows server 2008R2 — Как установить контроллер домена-31

На этом роль можно считать полностью развернутой, простейшие вещи с Active directory мы разберем в следующей статье:) Так же если вы изначально задали неправильное имя контроллера домена и хотите его сменить то посмотрите Как переименовать контроллер домена в Windows Server 2008 R2-2 часть через утилиту netdom

Добавление дополнительного контроллера домена в существующий домен AD

Как вы знаете, службы Active Directory Domain Services (AD DS) устанавливаются на сервере, который называется контроллер домена (DC). В активный каталог домена AD можно добавить десятки дополнительных контроллеров для балансировки нагрузки, отказоустойчивости, уменьшения нагрузки на WAN каналы и т.д. Все контроллеры домена должны содержать одинаковую базу учетных записей пользователей, учетных записей компьютеров, групп и других объектов LDAP каталога.

Для корректной работы всем контроллерам домена необходимо синхронизироваться и копировать информацию между собой. Когда вы добавляете новый контроллер домена в существующий домен, контроллеры домена должны автоматически синхронизировать данные между собой. Если новый контроллер домена и существующий DC находятся в одном сайте, они могут легко реплицировать данные между собой. Если новый DC находится на удаленном сайте, то автоматическая репликация не так эффективна. Поскольку репликация будет идти через медленные (WAN каналы), которые как правило стоят дорого и скорость передачи данных по ним не велика.

В этой статье мы покажем, как добавить дополнительный контроллер домена в существующий домен Active Directory (Установка домена AD на примере Windows 2016).

Добавление дополнительного контроллера домена в существующий домен AD

Прежде всего, нам нужно установить роль Active Directory Domain Services на сервере, который будет новым DC.

Установка роли ADDS

Прежде всего, откройте консоль Server Manager. Когда откроется Server Manager, нажмите «Add roles and features», чтобы открыть консоль установки ролей сервера.

Пропустите страницу «Before you Begin». Выберите «Role-based or featured-based installation» нажмите кнопку «Next». На странице «Server Selection» снова нажмите кнопку «Next».

Выберите роль Active Directory Domain Services. В открывшемся окне нажмите кнопку «Add Features», чтобы добавить необходимые инструменты управления Active Directory Management Tools.

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

Настройка дополнительного контроллера домена

Теперь в мастере установки ролей нажмите ссылку «Promote this server to a domain controller».

Выберите «Add a domain controller to an existing domain», ниже укажите имя вашего домена AD. Если вы авторизованы под обычным пользователем, вы можете изменить учетные данные на администратора домена. Нажмите кнопку «Select», откроется новое окно, выберите имя вашего домена и нажмите «Ok», затем «Next».

На странице Domain Controller Options, можно выбрать, что нужно установить роль DNS-сервера на вашем DC. Также выберите роль Global Catalog. Введите пароль администратора для режима DSRM и подтвердите его, затем нажмите кнопку «Next».

Читать еще:  Установка доверительных отношений между доменами

На странице Additional options укажите сервер, с которым вы хотите выполнить первоначальную репликацию базы Active Directory ( с указанного сервера будет скопирована схема и все объекты каталога AD). Вы можете сделать снимок (snapshot) текущего состояния Active Directory на одном из контроллеров домена и применить его на новой машине. После этого база AD этого сервера будет представлять собой точную копию имеющегося контроллера домена. Подробнее о функции Install From Media (IFM) – установки нового DC с носителя в одной из следующих статей (https://vmblog.ru/razvertyvanie-kontrollera-domena-s-pomoshhyu-install-from-media-ifm/):

На страницах «Paths and Review options» нам ничего не придется настраивать, пропустите их, нажав кнопку «Next». На странице «Prerequisite», если вы видите какую-либо ошибку, проверьте и выполните все указанные требования, затем нажмите кнопку «Install».

Настройка репликации между новым и имеющимся контроллером домена

Мы почти закончили, теперь проверим и запустим репликацию между первичным DC (DC01.vmblog.ru) и новым DC (DC02.vmblog.ru). При копировании информации между этими двумя контроллерами домена данные базы Active Directory будут скопированы из DC01.vmblog.ru в DC02.vmblog.ru. После завершения процесса все данные корневого контроллера домена появятся на новом контроллере домена.

В «Server Manager» выберите вкладку «Tools» затем пункт «Active directory sites and services».

В левой панели разверните вкладку Sites -> Default-First-Site-Name -> Servers. Оба новых DC находятся в одном сайте AD (это подразумевает, что они находятся в одной подсети, либо сетях, соединенных высокоскоростным каналом связи). Затем выберите имя текущего сервера, на котором вы сейчас работаете, затем нажмите «NTDS Settings». В моем случае DC01 является корневым контроллером домена, в данный момент консоль запущена на DC02, который будет дополнительным контроллером домена.

Щелкните правой кнопкой мыши по элементу с именем «automatically generated». Нажмите «Replicate now». Появится предупреждение о запуске репликации между корневым контроллером домена и новым контроллером домена.

Сделайте то же самое для DC01. Разверните вкладку DC01 и нажмите «NTDS Settings». Щелкните правой кнопкой мыши на «automatically generated», затем нажмите «Replicate now». Оба сервера реплицируются друг с другом, и все содержимое DC01 будет скопировано в DC02.

Итак, мы закончили! Вы успешно добавили новый DC и принудительно запустили репликацию между двумя контроллерами домена.

Настройка Active Directory Domain Services

Настройка Active Directory представляет из себя достаточно простой процесс и рассматривается на множестве ресурсов в интернете, включая официальные . Тем не менее на своем блоге я не могу не затронуть этот момент, поскольку большинство дальнейших статей будет так или иначе основано на окружении, настройкой которого я планирую заняться как раз сейчас.

Если вам интересна тематика Windows Server, рекомендую обратиться к тегу Windows Server на моем блоге. Также рекомендую ознакомиться с основной статье по Active Directory — Active Directory Domain Services

Подготовка окружения

Разворачивать роль AD я планирую на двух виртуальных серверах (будущих контроллерах домена) по очереди.

  1. Первым делом нужно задать подходящие имена серверов, у меня это будут DC01 и DC02;
  2. Далее прописать статические настройки сети (подробно этот момент я рассмотрю ниже);
  3. Установите все обновления системы, особенно обновления безопасности (для КД это важно как ни для какой другой роли).

На этом этапе необходимо определиться какое имя домена у вас будет. Это крайне важно, поскольку потом смена доменного имени будет очень большой проблемой для вас, хоть и сценарий переименования официально поддерживается и внедрен достаточно давно.

Поскольку у меня будут использоваться виртуализованные контроллеры домена, необходимо изменить некоторые настройки виртуальных машин, а именно отключить синхронизацию времени с гипервизором. Время в AD должно синхронизироваться исключительно с внешних источников. Включенные настройки синхронизации времени с гипервизором могут обернуться циклической синхронизацией и как следствие проблемами с работой всего домена.

Вообще сам подход к администрированию виртуализованных контроллеров домена отличается в виду некоторых особенностей функционирования AD DS 4 5 :

Виртуальные среды представляют особую трудность для распределенных рабочих потоков, зависящих от логической схемы репликации по времени. Например, репликация AD DS использует равномерно увеличивающееся значение (которое называется USN, или номер последовательного обновления), назначенное транзакциям в каждом контроллере домена. Каждый экземпляр базы данных контроллера домена также получает идентификатор под названием InvocationID. InvocationID контроллера домена и его номер последовательного обновления вместе служат уникальным идентификатором, который связан с каждой транзакцией записи, выполняемой на каждом контроллере домена, и должны быть уникальны в пределах леса.

На этом основные шаги по подготовке окружения завершены, переходим к этапу установки.

Установка Active Directory

Установка производится через Server Manager и в ней нет ничего сложного, подробно все этапы установки вы можете увидеть ниже:

Сам процесс установки претерпел некоторые изменения 6 по сравнению с предыдущими версиями ОС:

Развертывание доменных служб Active Directory (AD DS) в Windows Server 2012 стало проще и быстрее по сравнению с предыдущими версиями Windows Server. Установка AD DS теперь выполняется на основе Windows PowerShell и интегрирована с диспетчером серверов. Сократилось количество шагов, необходимых для внедрения контроллеров домена в существующую среду Active Directory.

Необходимо выбрать только роль Доменные службы Active Directory, никакие дополнительные компоненты устанавливать не нужно. Процесс установки занимает незначительно время и можно сразу переходить к настройке.

Настройка Active Directory

Когда установится роль, справа вверху Server Manager вы увидите восклицательный знак — требуется провести конфигурацию после развертывания. Нажимаем Повысить роль этого сервера до контроллера домена.

Далее весь процесс будет проходить в мастере настройки.

Повышение роли сервера до контроллера домена

Этапы работы мастера подробно описаны в документации 7 . Тем не менее, пройдемся по основным шагам.

Поскольку мы разворачиваем AD с нуля, то нужно добавлять новый лес. Не забудьте надежно сохранить пароль для режима восстановления служб каталогов (DSRM). Расположение базы данных AD DS можно оставить по умолчанию (именно так и рекомендуют. Однако для разнообразия в своей тестовой среде я указал другой каталог).

После этого сервер самостоятельно перезагрузится.

Создание учетных записей администраторов домена/предприятия

Залогиниться нужно будет под учетной записью локального администратора, как и прежде. Зайдите в оснастку Active Directory — пользователи и компьютеры, создайте необходимые учетные записи — на этом этапе это администратор домена.

Сразу же рекомендую настроить и иерархию организации (только не используйте русские символы!).

Настройка DNS на единственном DC в домене

Во время установки AD также была установлена роль AD DNS, поскольку других серверов DNS у меня в инфраструктуре не было. Для правильно работы сервиса необходимо изменить некоторые настройки. Для начала нужно проверить предпочитаемые серверы DNS в настройках сетевого адаптера. Необходимо использовать только один DNS-сервер с адресом 127.0.0.1. Да, именно localhost. По умолчанию он должен прописаться самостоятельно.

Убедившись в корректности настроек, открываем оснастку DNS. Правой кнопкой нажимаем на имени сервера и открываем его свойства, переходим на вкладку «Сервер пересылки». Адрес DNS-сервера, который был указан в настройках сети до установки роли AD DS, автоматически прописался в качестве единственного сервера пересылки:

Необходимо его удалить и создать новый и крайне желательно, чтобы это был сервер провайдера, но никак не публичный адрес типа общеизвестных 8.8.8.8 и 8.8.4.4. Для отказоустойчивости пропишите минимум два сервера. Не снимайте галочку для использования корневых ссылок, если нет доступных серверов пересылки. Корневые ссылки — это общеизвестный пул DNS-серверов высшего уровня.

Добавление второго DC в домен

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

Обратите внимание, что в сетевых настройках этого сервера основным DNS-сервером должен быть выбран настроенный ранее первый контроллер домена! Это обязательно, иначе получите ошибку.

После необходимых настроек логиньтесь на сервер под учетной записью администратора домена, которая была создана ранее.

Настройка DNS на нескольких DC в домене

Для предупреждения проблем с репликацией нужно снова изменить настройки сети и делать это необходимо на каждом контроллере домена (и на существовавших ранее тоже) и каждый раз при добавлении нового DC:

Если у вас больше трех DC в домене, необходимо прописать DNS-серверы через дополнительные настройки именно в таком порядке. Подробнее про DNS вы можете прочитать в моей статье Шпаргалка по DNS.

Читать еще:  Уровень леса домена

Настройка времени

Этот этап нужно выполнить обязательно, особенно если вы настраиваете реальное окружение в продакшене. Как вы помните, ранее я отключил синхронизацию времени через гипервизор и теперь нужно её настроить должным образом. За распространение правильного время на весь домен отвечает контроллер с ролью FSMO PDC эмулятор (Не знаете что это такая за роль? Читайте статью PDC emulator — Эмулятор первичного контроллера домена). В моем случае это конечно же первый контроллер домена, который и является носителем всех ролей FSMO изначально.

Настраивать время на контроллерах домена будем с помощью групповых политик. Напоминаю, что учетные записи компьютеров контроллеров домена находятся в отдельном контейнере и имеют отдельную групповую политику по умолчанию. Не нужно вносить изменения в эту политику, лучше создайте новую.

Назовите её как считаете нужным и как объект будет создан, нажмите правой кнопкой — Изменить. Переходим в Конфигурация компьютераПолитикиАдминистративные шаблоныСистемаСлужба времени WindowsПоставщики времени. Активируем политики Включить NTP-клиент Windows и Включить NTP-сервер Windows, заходим в свойства политики Настроить NTP-клиент Windows и выставляем тип протокола — NTP, остальные настройки не трогаем:

Дожидаемся применения политик (у меня это заняло примерно 5-8 минут, несмотря на выполнение gpupdate /force и пару перезагрузок), после чего получаем:

Вообще надо сделать так, чтобы время с внешних источников синхронизировал только PDC эмулятор, а не все контроллеры домена под ряд, а будет именно так, поскольку групповая политика применяется ко всем объектам в контейнере. Нужно её перенацелить на конкретный объект учетной записи компьютера-владельца роли PDC-эмулятор. Делается это также через групповые политики — в консоли gpmc.msc нажимаем левой кнопкой нужную политику и справа у вас появятся её настройки. В фильтрах безопасности нужно добавить учетную запись нужного контроллера домена:

Подробнее о принципе работы и настройке службы времени читайте в официальной документации 8 .

На этом настройка времени, а вместе с ней и начальная настройка Active Directory, завершена.

Атаки на Active Directory. Разбираем актуальные методы повышения привилегий

Содержание статьи

Другие статьи про атаки на Active Directory

Пароли из SYSVOL и GPP

На каждом компьютере с Windows, который работает в сети с Active Directory, имеется встроенная учетная запись администратора, защищенная паролем. Одно из стандартных требований безопасности — регулярно менять этот пароль. Казалось бы, задача несложная. Но только не когда в сети насчитывается под сотню машин.

Чтобы облегчить себе жизнь, ленивые системные администраторы иногда используют групповые политики для установки пароля локального администратора на большом количестве рабочих станций. Это довольно удобно, да и заменить такой пароль, когда придет срок, можно за пару минут. Одна незадача: на всех компьютерах пароль локального админа будет одинаковый.

Из этого следует вывод: получение учетных данных администратора на одной из машин сделает злоумышленника админом сразу на всех. Рассмотрим два способа добиться такого результата.

Учетные данные в SYSVOL

SYSVOL — это общедоменный ресурс Active Directory, к которому у всех авторизованных пользователей есть доступ на чтение. SYSVOL содержит сценарии входа, данные групповой политики и другие данные, которые должны быть доступны везде, где распространяется политика домена. При этом SYSVOL автоматически синхронизируется и используется всеми контроллерами домена. Все групповые политики домена хранятся по адресу

Чтобы упростить управление локальной учетной записью администратора на удаленных компьютерах с Windows, для каждой из них можно использовать собственный сценарий смены пароля. Проблема в том, что часто пароль хранится в виде открытого текста в скрипте (например, в файле VBS), который, в свою очередь, находится в SYSVOL. Вот пример одного из результатов поиска сценария VBS, меняющего пароль локального администратора на сетевых машинах.

Пример VBS-скрипта с официального сайта MSDN

Этот сценарий доступен в галерее Microsoft TechNet, из-за чего нередко используется системными администраторами, которые предпочитают готовые решения. Извлечь из него пароль не составляет никакого труда. А поскольку скрипт хранится в SYSVOL, к которому у каждого пользователя домена есть доступ для чтения, наличие пароля автоматически превращает его обладателя в локального администратора на всех сетевых машинах с виндой на борту.

Настройки групповой политики

В 2006 году инструмент PolicyMaker от Microsoft Bought Desktop Standard был переименован и выпущен вместе с Windows Server 2008 как Group Policy Preferences (GPP, «предпочтения групповой политики»). Одна из наиболее полезных функций GPP — возможность создавать локальных пользователей, настраивать и изменять их учетки, а также сохранять учетные данные в нескольких файлах сценариев:

  • карта дисков (Drives.xml);
  • источники данных (DataSources.xml);
  • конфигурация принтера (Printers.xml);
  • создание/обновление сервисов (Services.xml);
  • запланированные задачи (ScheduledTasks.xml).

Инструмент, безусловно, полезный: с его помощью можно автоматизировать многие рутинные действия. Например, GPP позволяет использовать групповую политику для выполнения запланированных задач с заданными учетными данными, а также при необходимости менять пароли локального администратора на большом количестве компьютеров.

Теперь давай посмотрим, как эта штука работает. При создании нового предпочтения групповой политики в SYSVOL генерируется связанный XML-файл с соответствующими данными конфигурации. Если в ней указан пароль пользователя, он будет зашифрован AES 256 бит. Но в 2012 году Microsoft опубликовала в MSDN ключ AES, который можно использовать для расшифровки пароля.

Ключ шифрования, представленный MSDN

Иными словами, любой авторизованный в домене юзер может найти в общем ресурсе SYSVOL файлы XML, содержащие cpassword, то есть зашифрованный пароль AES.

Пример содержимого файла Groups.xml

Быстро найти эти значения можно следующей командой:

Для расшифровки пароля можно воспользоваться инструментом Cryptool, при этом нужно в ручном режиме декодировать Base64 и указать ключ с MSDN (подробная инструкция по расшифровке приведена в статье на Хабре). Существует и полностью автоматизированное средство под названием gpp-decrypt, которое требует только значение cpassword и уже предустановлено в Kali Linux. Аналогичная утилита для Windows называется Get-GPPPassword, ее можно отыскать в наборе программ PowerSploit.

Ну а для очень ленивых есть модуль smb_enum_gpp из набора Metasploit. Этот инструмент попросит указать только учетные данные пользователей и адрес контроллера домена.

Так мы можем получить пароль локального администратора, и в большинстве случаев он будет работать на всех компьютерах домена.

DNSAdmins

Microsoft не только реализовала собственный DNS-сервер, но и внедрила для него протокол управления, позволяющий интегрировать DNS-сервер с доменами Active Directory. По умолчанию контроллеры домена также являются DNS-серверами, поэтому DNS-серверы должны быть доступны каждому пользователю домена. Это, в свою очередь, открывает потенциальную возможность для атаки на контроллеры домена: с одной стороны мы имеем сам протокол DNS, а с другой — протокол управления, основанный на RPC.

Пользователь, входящий в группу DNSAdmins или имеющий права на запись в объекты DNS-сервера, может загрузить на DNS-сервер произвольную DLL с привилегиями System. Это очень опасно, поскольку многие корпоративные сети используют контроллер домена в качестве DNS-сервера.

Таким образом, для реализации атаки мы можем просто загрузить на DNS-сервер произвольную библиотеку с помощью dnscmd (путь \ops-builddll должен быть доступен для чтения DC):

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

Так как наш пользователь — член группы DNSAdmins, мы можем перезапустить службу DNS:

После перезапуска DNS-сервера будет выполнен код из загруженной библиотеки. Такая библиотека, например, может содержать скрипт PowerShell для обратного подключения.

Пример PowerShell-кода в DLL

После успешного выполнения скрипта мы будем прослушивать на своем хосте обратное подключение:

Пример успешного бэкконнекта

В результате мы получим права system на DC.

Делегирование Kerberos

Делегирование — это функция Active Directory, позволяющая учетке пользователя или компьютера выдавать себя за другую учетную запись. В качестве примера разберем ситуацию, когда пользователь обращается к веб-приложению, чтобы работать с ресурсами на сервере базы данных.

Схема взаимодействия с базой данных через веб-сервер

Исходя из этой схемы, веб-сервер должен работать с сервером базы данных от имени пользователя. Здесь и помогает делегирование — к учетным записям пользователей в среде Windows применяется флаг TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION (T2A4D) User-Account-Control .

Атрибут User-Account-Control (который не следует путать с механизмом контроля учетных записей Windows) устанавливает определенные атрибуты для учетных записей Active Directory — например, если учетная запись отключена, заблокирована или пароль пользователя никогда не истекает.

Для реализации делегирования Microsoft внедрила расширение протокола Kerberos «Служба для доступа пользователя к себе» ( S4U2Self ). Это расширение позволяет службе запрашивать токен для другого пользователя, предоставляя имя пользователя, но не вводя пароль. Когда учетная запись пользователя имеет флаг T24AD , такие токены могут быть запрошены с атрибутом forwardable, который дает службе возможность аутентифицироваться с этими токенами для других служб.

Читать еще:  Новый домен в существующем лесу

Чтобы избежать неограниченного делегирования, Microsoft гарантировала, что данные токены могут использоваться только для определенных служб, которые настроены для учетной записи пользователя через расширение «Служба для пользователя через прокси» ( S4U2proxy ). Этот параметр контролируется атрибутом msDS-AllowedToDelegateTo в учетной записи пользователя. Он содержит список имен участников службы, который указывает, на какие службы Kerberos пользователь может перенаправлять эти токены (так же, как выполняется обычное ограниченное делегирование в Kerberos). Например, ты хочешь, чтобы твоя веб-служба имела доступ к общей папке для пользователей. Тогда учетная запись службы должна иметь атрибут

Для наглядности рассмотрим схему аутентификации Kerberos.

Схема аутентификации Kerberos

  1. Пользователь аутентифицируется в веб-сервисе с использованием не Kerberos-совместимого механизма аутентификации.
  2. Веб-служба запрашивает билет для учетной записи user без указания пароля, как для учетной записи svc_web .
  3. KDC проверяет значение svc_web userAccountControl для флага TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION , а также не заблокирован ли целевой пользователь для делегирования. Если все в порядке, KDC возвращает перенаправляемый билет для учетной записи пользователя ( S4U2Self ).
  4. Затем служба передает этот билет обратно в KDC и запрашивает билет для службы cifs/fs.contoso.com .
  5. KDC проверяет поле msDS-AllowedToDelegateTo в учетной записи svc_web . Если служба указана в списке, она вернет билет службы для общей папки ( S4U2proxy ).
  6. Веб-служба теперь может проходить проверку подлинности на общем ресурсе в качестве учетной записи пользователя с использованием предоставленного билета.

Неограниченное делегирование

При неограниченном делегировании Kerberos на сервере, на котором размещена служба, контроллер домена DC помещает копию TGT (ticket granting ticket — билет для получения билета) пользователя в TGS (Ticket Granting Server — сервер выдачи билетов или разрешений) службы. Когда данные пользователя предоставляются серверу для доступа к службе, сервер открывает TGS и помещает TGT пользователя в LSASS (Local Security Authority Subsystem Service — сервис проверки подлинности локальной системы безопасности) для дальнейшего использования. Сервер приложений теперь может выдавать себя за этого пользователя без ограничений!

Таким образом, хост, на котором активно неограниченное делегирование, будет содержать в памяти TGT делегированного пользователя. Наша задача — его достать, чтобы скомпрометировать пользователя. Данный вид атаки возможен, если мы скомпрометировали сам хост либо пользователя, имеющего право управлять хостом с делегированием.

Обнаружить все компьютеры с неограниченным делегированием Kerberos очень просто: у них будет выставлен флаг TrustedForDelegation . Это определяется с помощью инструмента ADModule, а конкретнее — следующей команды:

Того же результата можно достигнуть, выполнив такую команду PowerView:

Теперь нужно отослать запрос MS-RPRN RpcRemoteFindFirstPrinterChangeNotification (аутентификация Kerberos) на сервер печати DC (служба Spooler). DC немедленно отправит ответ, который включает TGS (полную копию TGT) учетной записи компьютера контроллера домена, так как на нашем хосте используется неограниченное делегирование.

Чтобы это сделать, сначала поставим прослушивание входящих соединений с помощью Rubeus:

Теперь инициируем запрос с помощью SpoolSample:

В Rubeus мы увидим подключение.

Подключение Rubeus

Теперь получим TGT:

Имея TGT, мы можем выполнить DCSync-атаку с помощью mimikatz:

DCSync krbtgt

Мы добыли NTLM-хеш учетной записи krbtgt и теперь можем сделать golden ticket, с которым получим полный доступ ко всей инфраструктуре домена:

Теперь можно удаленно подключиться к контроллеру домена с учетной записью администратора:

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

Добавление дополнительного контроллера домена в существующий домен AD

Как вы знаете, службы Active Directory Domain Services (AD DS) устанавливаются на сервере, который называется контроллер домена (DC). В активный каталог домена AD можно добавить десятки дополнительных контроллеров для балансировки нагрузки, отказоустойчивости, уменьшения нагрузки на WAN каналы и т.д. Все контроллеры домена должны содержать одинаковую базу учетных записей пользователей, учетных записей компьютеров, групп и других объектов LDAP каталога.

Для корректной работы всем контроллерам домена необходимо синхронизироваться и копировать информацию между собой. Когда вы добавляете новый контроллер домена в существующий домен, контроллеры домена должны автоматически синхронизировать данные между собой. Если новый контроллер домена и существующий DC находятся в одном сайте, они могут легко реплицировать данные между собой. Если новый DC находится на удаленном сайте, то автоматическая репликация не так эффективна. Поскольку репликация будет идти через медленные (WAN каналы), которые как правило стоят дорого и скорость передачи данных по ним не велика.

В этой статье мы покажем, как добавить дополнительный контроллер домена в существующий домен Active Directory (Установка домена AD на примере Windows 2016).

Добавление дополнительного контроллера домена в существующий домен AD

Прежде всего, нам нужно установить роль Active Directory Domain Services на сервере, который будет новым DC.

Установка роли ADDS

Прежде всего, откройте консоль Server Manager. Когда откроется Server Manager, нажмите «Add roles and features», чтобы открыть консоль установки ролей сервера.

Пропустите страницу «Before you Begin». Выберите «Role-based or featured-based installation» нажмите кнопку «Next». На странице «Server Selection» снова нажмите кнопку «Next».

Выберите роль Active Directory Domain Services. В открывшемся окне нажмите кнопку «Add Features», чтобы добавить необходимые инструменты управления Active Directory Management Tools.

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

Настройка дополнительного контроллера домена

Теперь в мастере установки ролей нажмите ссылку «Promote this server to a domain controller».

Выберите «Add a domain controller to an existing domain», ниже укажите имя вашего домена AD. Если вы авторизованы под обычным пользователем, вы можете изменить учетные данные на администратора домена. Нажмите кнопку «Select», откроется новое окно, выберите имя вашего домена и нажмите «Ok», затем «Next».

На странице Domain Controller Options, можно выбрать, что нужно установить роль DNS-сервера на вашем DC. Также выберите роль Global Catalog. Введите пароль администратора для режима DSRM и подтвердите его, затем нажмите кнопку «Next».

На странице Additional options укажите сервер, с которым вы хотите выполнить первоначальную репликацию базы Active Directory ( с указанного сервера будет скопирована схема и все объекты каталога AD). Вы можете сделать снимок (snapshot) текущего состояния Active Directory на одном из контроллеров домена и применить его на новой машине. После этого база AD этого сервера будет представлять собой точную копию имеющегося контроллера домена. Подробнее о функции Install From Media (IFM) – установки нового DC с носителя в одной из следующих статей (https://vmblog.ru/razvertyvanie-kontrollera-domena-s-pomoshhyu-install-from-media-ifm/):

На страницах «Paths and Review options» нам ничего не придется настраивать, пропустите их, нажав кнопку «Next». На странице «Prerequisite», если вы видите какую-либо ошибку, проверьте и выполните все указанные требования, затем нажмите кнопку «Install».

Настройка репликации между новым и имеющимся контроллером домена

Мы почти закончили, теперь проверим и запустим репликацию между первичным DC (DC01.vmblog.ru) и новым DC (DC02.vmblog.ru). При копировании информации между этими двумя контроллерами домена данные базы Active Directory будут скопированы из DC01.vmblog.ru в DC02.vmblog.ru. После завершения процесса все данные корневого контроллера домена появятся на новом контроллере домена.

В «Server Manager» выберите вкладку «Tools» затем пункт «Active directory sites and services».

В левой панели разверните вкладку Sites -> Default-First-Site-Name -> Servers. Оба новых DC находятся в одном сайте AD (это подразумевает, что они находятся в одной подсети, либо сетях, соединенных высокоскоростным каналом связи). Затем выберите имя текущего сервера, на котором вы сейчас работаете, затем нажмите «NTDS Settings». В моем случае DC01 является корневым контроллером домена, в данный момент консоль запущена на DC02, который будет дополнительным контроллером домена.

Щелкните правой кнопкой мыши по элементу с именем «automatically generated». Нажмите «Replicate now». Появится предупреждение о запуске репликации между корневым контроллером домена и новым контроллером домена.

Сделайте то же самое для DC01. Разверните вкладку DC01 и нажмите «NTDS Settings». Щелкните правой кнопкой мыши на «automatically generated», затем нажмите «Replicate now». Оба сервера реплицируются друг с другом, и все содержимое DC01 будет скопировано в DC02.

Итак, мы закончили! Вы успешно добавили новый DC и принудительно запустили репликацию между двумя контроллерами домена.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector