# Макаров Дмитрий Владиславович - Windows Basic. Практическая работа №4. Инфраструктурные сервисы в домене [toc] ## Практическая работа №4.1 DNS ### Часть 1. DNS ==Задача -- настроить перенаправление запросов *DNS*, не относящихся к зоне **pt.local**, на внешний *DNS* сервер. В дополнение -- сконфигурировать зону обратного просмотра.== :::success :bulb: Предварительно проверено, что на микротике настроено перенаправление запросов. ::: 1.1 Зайдём в оснастку *DNS* --- ![](https://i.imgur.com/HHxmMSF.png) --- 1.2 Просмотрим текущие *DNS* записи --- ![](https://i.imgur.com/EPyxePZ.png) --- 1.3 Настроим форвард. Перейдём в настройки сервера *DNS* --- ![](https://i.imgur.com/PLuaRu2.png) --- 1.4 Откроем вкладку **forwarders** --- ![](https://i.imgur.com/bRHpMPA.png) --- 1.5 Зайдём в пункт **edit**. Введём адрес **Mikrotik**. Именно он будет перенаправлять *DNS* запросы на внешние сервера. Видим, что настройка прошла ==корректно== --- ![](https://i.imgur.com/h1yZtRJ.png) --- 1.6 Закроем окно и применим настройки, после чего закроем окно свойств *DNS* --- ![](https://i.imgur.com/xVZfpyZ.png) --- 1.7 Настроим зону обратного просмотра. Нажмём *ЛКМ* на **reverse lookup zone**, а после нажмём на неё *ПКМ* --- ![](https://i.imgur.com/qroLI9P.png) --- 1.8 Нажмём **new zone**. Откроется меню создания зоны, двигаемся дальше --- ![](https://i.imgur.com/jWMOC9Y.png) --- 1.9 Оставляем пункт **primary zone** --- ![](https://i.imgur.com/BNpjyIV.png) --- 1.10 Аналогично оставляем по умолчанию параметры репликации --- ![](https://i.imgur.com/Z4u6GRw.png) --- 1.11 Настроим **IPv4** зону --- ![](https://i.imgur.com/rZaySkk.png) --- 1.12 Введём идентификатор зоны без последнего ip октета. Это наша сеть, для которой будет создана зона обратного просмотра. Переходим дальше --- ![](https://i.imgur.com/xy7QYHz.png) --- 1.13 Оставим пункт по умолчанию для динамического обновления зоны --- ![](https://i.imgur.com/RFcHknH.png) --- 1.14 Сверимся с итоговыми настройками и завершим конфигурацию --- ![](https://i.imgur.com/7KtNgRo.png) --- 1.15 ==Увидим созданную обратную зону== --- ![](https://i.imgur.com/GcJDd7z.png) --- ## Практическая работа №4.2,3 DHCP. ### Часть 2. DHCP ==Задача -- настроить сервис DHCP== 2.1 Откроем оснастку *DHCP*. Развернём меню *DHCP* и выделим **IPv4** --- ![](https://i.imgur.com/V6KbgIV.png) --- 2.2 Нажмём на **IPv4** *ПКМ* и выберем **new scope** --- ![](https://i.imgur.com/qSnuOsn.png) --- 2.3 Приступим к созданию области *DHCP* --- ![](https://i.imgur.com/gJv6Xsn.png) --- 2.4 Введём имя области, например **pool1** --- ![](https://i.imgur.com/4bVDVtn.png) --- 2.5 Укажем диапазон выдаваемых адресов --- ![](https://i.imgur.com/CAV6lKM.png) --- 2.6 Не будем указывать исключения из диапазона --- ![](https://i.imgur.com/rLmBYlG.png) --- 2.7 Оставим время аренды по умолчанию, **8 дней** --- ![](https://i.imgur.com/5hGDkhN.png) --- 2.8 Сконфигурируем область сейчас --- ![](https://i.imgur.com/YqmFB6j.png) --- 2.9 Введём адрес роутера и нажмём **add** --- ![](https://i.imgur.com/E6pFtnY.png) --- 2.10 Введём адрес резервного контроллера домена, он же будет резервным *DNS*. Нажмём **add** ==Так как dc2 включен, всё прошло хорошо== --- ![](https://i.imgur.com/GGs0wSq.png) --- 2.11 **WINS** серверов у нас не будет --- ![](https://i.imgur.com/KmvwWaC.png) --- 2.12 Активируем область сейчас. Завершаем работу визарда --- ![](https://i.imgur.com/erYTqDm.png) --- 2.13 Новая область появилась в меню, можно просмотреть её параметры --- ![](https://i.imgur.com/nVE3vbj.png) --- 2.14 Настроим **Windows 10** на автоматическое получение параметров сети по *DHCP* --- ![](https://i.imgur.com/YIs8gT1.png) --- 2.15 Настроим **Kali Linux** на автоматическое получение параметров сети по *DHCP* --- ![](https://i.imgur.com/qZ444X2.png) --- 2.16 ==Видим информацию об аренде на **dc1** в меню *address leases*== --- ![](https://i.imgur.com/mV4PFZf.png) --- ### Часть 3. Отказоустойчивый DHCP ==Настроим резервирование по технологии Hot Standby== 3.1 Нажмём *ПКМ* на scope и выберем **configure failover** --- ![](https://i.imgur.com/WCEY47K.png) --- 3.2 Выберем ip пулы для резервирования, он у нас один и выбран по умолчанию --- ![](https://i.imgur.com/1RC07aQ.png) --- 3.3 Выберем сервер-партнёр.Нажмём **add server**. В меню добавления сервера выберем в качестве резервного **dc2** --- ![](https://i.imgur.com/HKJ0IgI.png) --- 3.5 После добавления идём дальше --- ![](https://i.imgur.com/mR2vXqZ.png) --- 3.6 Настроим **failover**. Выберем режим *Hot Standby* и снимем галочку с пункта аутентификации. Это не безопасно, но в рамках нашей работы не принципиально --- ![](https://i.imgur.com/yIpMLxS.png) --- 3.7 Подтвердим настройки --- ![](https://i.imgur.com/sVTSKJS.png) --- 3.8 Видим вывод успешного создания кластера и закрываем меню --- ![](https://i.imgur.com/ki3W9GL.png) --- 3.9 Проверяем, что всё работает хорошо. Перейдём в **dc2** в оснастку *dhcp* и просмотрим свойства области, которая там появилась --- ![](https://i.imgur.com/4usP6ow.png) --- 3.10 Перейдём в меню **отработка отказа** и увидим, что ==все настройки применились корректно== --- ![](https://i.imgur.com/3H4ofSH.png) --- ## Практическая работа №4.4 GPO. ### Часть 4. Групповые политики ==С помощью групповых политик необходимо решить:== 1. Включить возможность логирования сетевых файловых ресурсов 2. Настроить набор политик для защиты от **mimikatz** 3. Применить политики для генерации событий, необходимых **SIEM** #### Политика аудита 4.1 Зайдём в **Group policy management**. Развернём вложенные меню, увидим две базовые политики в папке **Group policy object** и ссылки на них в OU, куда они были применены --- ![](https://i.imgur.com/0xmreEs.png) --- 4.2 Отредактируем политику контроллеров домена --- ![](https://i.imgur.com/cAd0z0a.png) --- 4.3 Настроим политику компьютера **Object Access** --- :::info Путь до политики выглядит следующим образом: **Computer Configuration/Policies/Windows Settings/Security Settings/Advanced Audit Policy Configuration/Audit Policies/Object Access** ::: --- ![](https://i.imgur.com/rUUAYYN.png) --- 4.4 Включим аудит сетевых папок --- ![](https://i.imgur.com/bsWxadl.png) --- 4.5 Включим аудит файловой системы --- ![](https://i.imgur.com/cRGHx3l.png) --- Данная политика применима и к **dc1**, и **dc2**. В дальнейшем мы создадим на них файловый сетевой ресурс и сможем увидеть, например, события удаления файлов Применим политики к **dc2**: Включим аудит сетевых папок --- ![](https://i.imgur.com/xpgSuoj.png) --- Включим аудит файловой системы --- ![](https://i.imgur.com/IiVZ3Ss.png) --- #### Политики защиты от mimikatz Есть несколько способов защиты от mimikatz: 1. Запрет **Debug** 2. Отключение **WDigest** (не будет рассмотрено в рамках практики ввиду неактуальности) 3. Защита **LSA** от подключения сторонних модулей ##### Запрет Debug 4.6 Создадим новую политику в папке **GPO** --- ![](https://i.imgur.com/7JdW9PI.png) --- 4.7 Назовём её **mimikatz_block_debug** --- ![](https://i.imgur.com/sEMKf2Y.png) --- 4.8 Перейдём в настройки политики --- ![](https://i.imgur.com/nUHKcR3.png) --- 4.9 Найдём политику **debug** --- :::info Путь до политики выглядит следующим образом: **Computer Configuration/Policies/Windows Settings/Security Settings/User rights Assignment** ::: --- ![](https://i.imgur.com/sLQEr8f.png) --- 4.10 Настроим политику так, чтобы только у **администратора** и **ADMPetr** были права отладки --- ![](https://i.imgur.com/Uc4Km1Z.png) --- 4.11 Применим политику к домену, чтобы она сработала на всех ПК домена. Жмём *ПКМ* на домене и выбираем **Link an Existing GPO** --- ![](https://i.imgur.com/vwUogf2.png) --- Выбираем политику: --- ![](https://i.imgur.com/4D8vinK.png) --- 4.12 Для проверки скачаем **mimikatz** на **pc1**. Предварительно выключим **защитник Windows** Сначала проверим, запустив консоль от имени администратоа **ADMPetr** --- ![](https://i.imgur.com/J6jrcL9.png) ___ Затем, запустив от имени администратоа **ADMIgor** --- ![](https://i.imgur.com/pFitJcZ.png) --- :::success :+1: Проверка успешная ::: ==К сожалению эту настройку можно обойти путём получения прав **SeDebugPrivilege** с помощью утилиты **secedit**.== --- ##### Защита LSA от подключения сторонних модулей В **Windows 10** и в **Windows Server 2016** есть возможность включить **защиту LSA**, которая защищает **память LSA** и предотвращает подключение к ней незащищенных процессов. :::info Чтобы включить эту защиту, нам необходимо создать параметр **RunAsPPL** со значением **1** в разделе реестра **HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA**. ::: 4.13 Добавим в политику **mimikatz_block_debug** новый параметр реестра --- ![](https://i.imgur.com/PgqfEp5.png) --- 4.14 Настроим параметр, активирущий защиту **LSA** --- ![](https://i.imgur.com/4e7CuM9.png)! --- Теперь подключаемые *модули без подписи*, а также модули, *не имеющие подписи Майкрософт*, не будут загружаться в **LSA** --- ![](https://i.imgur.com/P6nDUyK.png) --- #### Настройки политик для SIEM Для полноценного логирование домена необходимо провести настройки политик. Без этих логов **SIEM** не сможет обнаружить множество атак на домен. ##### Включение аудита командной строки и powershell 4.15 Создадим политику аудита **audit_services_cmd_posh** --- ![](https://i.imgur.com/zxntAAt.png) --- 4.16 Перейдём в ветку **Административные шаблоны/Система/Аудит создания процессов** --- ![](https://i.imgur.com/yKPJdDW.png) --- 4.17 Активируем параметр **Включить командную строку в события создания процессов** --- ![](https://i.imgur.com/qNTlOIA.png) --- 4.18 Перейдём в ветку **Административные шаблоны/Компоненты Windows/Windows PowerShell**. Выберем пункт **Включить ведение журнала и модулей** --- ![](https://i.imgur.com/IO6U4Xm.png) --- 4.19 Включим этот параметр для содержимого --- ![](https://i.imgur.com/nERhN6w.png) --- 4.20 Применим политику на домен --- ![](https://i.imgur.com/RFOzZix.png) --- 4.21 Выберем политику --- ![](https://i.imgur.com/E7Njjbp.png) --- ##### Активация журналирования контроллерах домена ==Настроим журналирование **LDAP** запросов и неудачные попытки выгрузки членов доменных групп через протокол **SAMRPC**== 4.22 Отредактируем политику контроллеров домена --- ![](https://i.imgur.com/yXjOK8l.png) --- 4.23 Создадим новый объект правки реестра --- ![](https://i.imgur.com/XXXuQyl.png) --- 4.24 Изменим параметр реестра. Этот параметр уже существует, мы же его изменяем --- ![](https://i.imgur.com/kWn7his.png) --- :::info Ветка реестра: **HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics** Имя параметра: **15 Field Engineering** ::: --- 4.25 Изменим значение на **5**, изменяя *decimal* значение --- ![](https://i.imgur.com/KVL12g9.png) --- 4.26 Создадим 2 новых параметра реестра **Expensive Search Results Threshold** --- ![](https://i.imgur.com/DdyDT7B.png) --- **Inefficient Search Result Threshold** --- ![](https://i.imgur.com/Fr5ihjw.png) --- :::info *Decimal*-значение **REG_DWORD 1** Ветка реестра: **HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters** ::: --- :::success После выполнения этих действий в журнале **Directory Service** создаются события с идентификатором **1644** для каждого **LDAP запроса** ::: --- 4.32 Настроим параметр для контроллеров домена, разрешающий только определенным пользователям выгружать членов доменных групп --- ![](https://i.imgur.com/PnUKpu0.png) --- 4.33 Дадим доступ на выгрузку для группы пользователей **Administrators** и пользователю **ADMPetr** --- ![](https://i.imgur.com/SiB0eLT.png) --- 4.34 В заключение настроим журналирование попыток выгрузки, добавим ещё один параметр в реестр --- ![](https://i.imgur.com/nTivKj3.png) --- :::info Ветка реестра: **SYSTEM\CurrentControlSet\Control\Lsa** Имя параметра, значение **DWORD 1** ::: ---