###### tags: `Windows Basic`
# Windows_Basic-Омаров_Джамалутин-Практика-4
*Выполнил Омаров Джамалутин*
## Практическая работа №4 Инфраструктурные сервисы в домене
### Часть 1. DNS
Необходимо настроить перенаправление запросов DNS, не относящихся к зоне pt.local, на внешний DNS сервер. А также сконфигурировать зону обратного просмотра.
1.1 Зайдем Windows Server 2016 (en) -> Tools -> DNS

1.2 Просмотрим текущие DNS записи, они созданы автоматически. Если необходимо можно настроить CNAME. Во вкладке "tcp" хранятся ссылки на службы:
* gc - Global Catalog
* kerberos
* ldap
В их конфигурации можно увидеть "Port number". Даже в случае смены порта, обращение происходит по имени службы - такая гибкая система;

1.3 Настроим Forward. Перейдем в настройки сервера DNS;

1.4 Откроем вкладку "Forwarders";

1.5 Edit;

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

1.7 Закроем окно и применим настройки, после чего закроем окно свойств DNS;

1.8 Нажимаем на "Reverse lookup zone" -> New Zone;

1.9 Next;

1.10 Primary zone -> Next;

1.11 Параметры репликации по умолчанию -> Next;

1.12 Настроим IPv4 зону -> Next;

1.13 Введем идентификатор зоны без последнего ip октета. Это наша внутренняя сеть, для которой будет создана зона обратного просмотра -> Next;

1.14 По умолчанию -> Next;

1.15 Finish;

1.16 Увидим созданную обратную зону;

### Часть 2. DHCP
2.1 Tools -> DHCP

2.2 Развернем меню DHCP, выделим IPv4;

2.3 ПКМ -> New Scope;

2.4 Откроется Wizard. Приступим к созданию области DHCP -> Next;

2.5 Введем имя области "pool1" -> Next;

2.6 Укажем диапазон выдаваемых ip адресов -> Next;

2.7 Исключения указывать не будем -> Next;

2.8 Время аренды по умолчанию -> Next;

2.9 Конфигурируем область сейчас -> Next;

2.10 Введем адрес роутера -> Add -> Next;

2.11 Введем адрес резервного контроллера домена, он же будет резервным DNS -> Add -> Next;

У меня dc2 выключен, поэтому выходит предупреждение -> Yes (все равно добавить).
2.12 WINS серверов у нас не будет -> Next;

2.13 Активируем область сейчас -> Next;

2.14 Finish;

2.15 Новая область появится в меню "Scope -> Scope Options", можно будет посмотреть параметры;

2.16 Настроим Windows 10 Pro на автоматическое получение параметров сети по DHCP -> OK;

2.17 Настроим Kali Linux на автоматическое получение параметров сети по DHCP;

2.18 Информация об аренде адресов на dc1. DHCP -> IPv4 -> Scope -> Address Leases;

При расследвании инцидентов есть уточнение. Мы раздаем в виде опции домен "pt.local", и, когда мы включаем Kali Linux и получаем адрес по DHCP, то столкнемся с тем, что Kali Linux в оснастке системы будет выглядеть как "kali.pt.local", хотя Kali Linux не находится в домене. На самом деле DHCP раздал такой домен, Kali Linux в свою очередь просто принимает имя, предложенное DHCP. Этот момент может запутать.
### Часть 3. Отказоустойчивый DHCP
В данной части будем настроивать резервирование по технологии Hot Standby.
3.1 Windows Server 2016 (en) ПКМ (Scope) -> Configure failover;

3.2 Выбираем ip пулы для резервирования. У нас выставлен по умолчанию -> Next;

3.3 Выбираем сервер-партнер "Add Server" -> This authorized DHCP server -> OK -> Next;

3.4 Настроим failover. Выбираем режим "Hot Standby" и снимаем галочку с пункта аутентификации -> Next;

3.5 Finish;

3.6 Успешное создание кластера -> Close;

3.7 Проверяем. Переходим в dc2 -> DHCP -> Область -> Свойства;

3.8 Переходим во вкладку "Отработка отказа", увидим, что все настройки применились корректно;

### Часть 4. Групповые политики
При помощи групповых политик решаем следующие задачи:
* Включаем возможность логирования сетевых файловых ресурсов
* Настраиваем набор политик для защиты от mimikatz
* Применяем политики для генерации событий, необходимых SIEM
#### Политика аудита
4.1 Зайдем в Group policy management;

4.2 Развернем вложенные меню, для того чтобы увидеть две базовые политики в папке "Group policy object" и ссылки на них в OU, куда они были применены:
* Default Domain Controllers Policy
* Default Domain Policy

Доменная политика применяется ко всему домену.
4.3 Отредактируем политику контроллеров домена "Default Domain Controllers Policy" -> Edit;

4.4 Настроим политику компьютера "Object Access";

4.5 Включим аудит сетевых папок;

4.6 Включим аудит файловой системы;

Данная политика применима к dc1 и dc2. В дальнейшем мы создадим на них файловый сетевой ресурс и сможем увидеть, например, события удаления файлов.
#### Политика защиты от mimikatz
**Запрет Debug**
4.7 Создадим новую политику в папке "Group Policy Object";

4.8 Навываем ее "mimikatz_block_debug";

4.9 Перейдем в настройки данный политики -> Edit;

4.10 Находим политику "Debug programs";

4.11 Применим политику так, чтобы только у администратора и ADMPetr были права отладки;

4.12 Применим политику к домену, чтобы она работала на всех ПК домена;


4.13 Проверяем. На pc1 можно проверить срабатывает ли mimikatz. Перед скачиванием mimikatz необходимо отключить защитник Windows.
Для Администратора - ему разрешено;

Для Petr - ему не разрешено;

Для ADMIgor - ему не разрешено;

#### Отключение WDigest
На современных системах уже не актуально, так как хранение пароля в открытом виде по умолчанию запрещается WDigest, начиная с Windows 8.1 и Windows Server 2012 R2.
Если используются более старые системы, то необходимо установить специальное обновление - KB2871997, а после этого с помощью полтика выставить параметры реестра для запрета хранения открытых паролей WDigest.
4.14 Редактируем существующую политику "mimikatz_block_debug", так как WDigest нужно аналогично отключить на всех ПК. Находим пункт правки реестра;

4.15 Создаем новый элемент реестра;

4.16 Переходим по ветке реестра "SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" -> Объявляем имя параметра "UseLogonCredential" -> Значение decimal выставляем 0 -> Apply -> OK;

4.17 Данная настройка применится ко всех компьютерам домена и пропишет в реестр необходимый параметр, отключающий хранение в открытом виде пароля для авторизации в IIS;

**Защита LSA от подключения сторонних модулей**
В Windows 8.1 и Windows Server 2012 R2 появилась возможность включить защиту LSA, которая защищает память LSA и предотвращает подключение к ней незащищенных процессов.
Чтобы включить эту защиту, вам необходимо создать параметр RunAsPPL со значением 1 в разделе реестра "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA".
4.18 Добавим в политику "mimikatz_block_debug" новый параметр реестра;

4.19 Настроим параметр, активирующий защиту LSA "SYSTEM\CurrentControlSet\Control\Lsa" -> Объявляем имя параметра "RunAsPPL" -> Значение decimal выставляем 1 -> Apply -> OK;

Теперь подключаемые модули без подписи, а также модули, не имеющие подписи Microsoft, не буду загружаться в "LSA".
#### Настройка политик для SIEM
Для полноценного логирования домена необходимо провести настройки политик. Без этих логов SIEM не сможет обнаружить множество атак на домен.
**Включение аудита командной строки и Powershell**
4.20 Создадим политику аудита "audit_services_cmd_posh";

4.21 Переходим в ветку как на скриншоте;

4.22 Активируем параметр "Include command line in process creation events";

4.23 Переходим в ветку как на скриншоте;

4.24 Активируем параметр "Turn on Module Logging";

4.25 Применим политику на домен;

#### Активация журналирования контроллера домена
Настроим журналирование LDAP запросов и неудачные попытки выгрузки членов доменных групп через протокол SAMRPC.
4.26 Отредактируем политику контроллеров домена -> Edit;

4.27 Создадим новый объект правки реестра;

4.28 Изменим параметр реестра. Этот параметр уже существует, мы его изменяем. "SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics" -> Имя параметра "15 Field Engineering" -> Select -> Значение decimal выставляем 5 -> Apply -> OK;


4.29 Создадим 2 новых параметра реестра;


После данных манипуляций в журнале "Directory Service" будут создаваться события с идентификатором 1644 для каждого LDAP запроса.
4.30 Настроим параметр для контроллеров домена, разрешающий определенным пользователям выгружать членов доменных групп;

4.31 Разрешим доступ на выгрузку для группы пользователей "Administrators" и пользователю "ADMPetr";

4.32 Настроим журналирование попыток выгрузки, добавим еще один параметр в реестр;
