# **Windows_Basic-Яртыбаш_Дмитрий-Практика-6** # *Практическая работа №6.1. Базовые атаки на инфраструктуру Windows* **Этап 1. Анализ базы NTDS** *1.1 Бэкап NTDS* * Активируем процесс Install From Media, позволяющий сделать копию нашего NTDS с необходимыми ветками реестра. Для этого введем в командную строку необходимые команды: ![](https://i.imgur.com/TyNA03V.png) *1.2 Перенос NTDS* * С помощью SMB зайдем с машины kali на dc1 и скопируем на kali дамп базы NTDS: ![](https://i.imgur.com/JfVIOYq.jpg) *1.3 Анализ NTDS* * Перейдем в домашнюю директорию пользователя, скачаем с гитхаба набор инструментов impacket, увидим, что у нас уже установлена актуальная версия pip, перейдем в директорию impacket и установим его: ![](https://i.imgur.com/UioP6B9.jpg) * Увидим сообщение об успешной установке impacket: ![](https://i.imgur.com/1T5lTKb.png) * Для анализа дампа базы NTDS применим команду: ![](https://i.imgur.com/XM44VXJ.png) **Этап 2. Path-the-hash** *2.1 Crackmapexec* * Воспользуемся функционалом Crackmapexec. Просканируем сеть: ![](https://i.imgur.com/N9gnyB7.png) * Затем выполним команду whoami на удаленной машине: ![](https://i.imgur.com/sAgzE34.jpg) * Просмотрим список сетевых папок, доступных администратору: ![](https://i.imgur.com/P1Oyqh9.png) * С помощью утилиты smbexec получим доступ к командной строке windows на удаленной машине. SMB сессия прерывается, но с третьей попытки у нас получается исполнить команду: ![](https://i.imgur.com/OK3RqLY.jpg) * Видим, что в нашем случае psexec работает гораздо стабильнее и исполняет команды быстрее. Это может быть связано с тем, что psexec создает на удаленной машине windows-службу, которая с помощью исполнения бинарного файла открывает RPC-подключение: ![](https://i.imgur.com/veRiZPH.jpg) *2.2 XFreeRDP* * Для подсключения по RDP дадим доступ на удаленное подключение администраторам домена: ![](https://i.imgur.com/EeQAM2L.jpg) * Попробуем зайти с kali на dc1: ![](https://i.imgur.com/7E82KMK.png) * Kali говорит нам что подключение запрещено адмнистративными инструментами сервера: ![](https://i.imgur.com/aC1lgtZ.png) * Чтобы отключить политику restricted admin, изменим на dc1 параметр реестра с помощью PoSH: ![](https://i.imgur.com/RxV0Oua.png) * В журнале аудита Powershell найдем событие, отражающее исполнение этой команды: ![](https://i.imgur.com/Ko3siV2.png) * Теперь мы можем получить доступ к рабочему dc1: ![](https://i.imgur.com/XrnEMVJ.png) **Этап 3. Атаки на базовые протоколы Windows** **NBT-NS & LLMNR & mDNS** *Анализ инфраструктуры через responder* * Запускаем Responder, который начинает отслеживать события: ![](https://i.imgur.com/yS4KO98.jpg) * На dc1 пытаемся получить доступ к сетевому ресурсу с некорректным именем \\pt-file. Responder притворяется сетевым ресурсом и просит нас авторизоваться: ![](https://i.imgur.com/fyCxIPw.jpg) * В выводе респондера появляется перехваченный аутентификацонный токен, который можно в дальнейшем брутфорсить: ![](https://i.imgur.com/QI3GGWG.jpg) *mitm6* * Просмотрим конфигурацию сети на Win10 перед атакой. Видим, что указано 2 DNS-сервера: ![](https://i.imgur.com/hvVPgB0.jpg) * Устанавливаем mitm6 и запускаем атаку: ![](https://i.imgur.com/rTqc33U.jpg) * Видим, что в конфиге Win10 добавился неизвестный DNS-сервер: ![](https://i.imgur.com/NNcPEPs.jpg) * Не прерывая атаку mitm, с помощью скрипта создаем свой SMB-сервер: ![](https://i.imgur.com/Nh0lYjS.jpg) * Пытаемся получить доступ к сетевым ресурсам домена: ![](https://i.imgur.com/0OPwjj6.jpg) * Видим перехваченные аутентификационные данные: ![](https://i.imgur.com/24QlqfO.jpg) ![](https://i.imgur.com/MGEzH77.jpg) --- # *Практическая работа №6.2 Компрометация доменной Windows-инфраструктуры.* * Активируем политику аудита машинных учетных записей: ![](https://i.imgur.com/rlUiPiv.png) * И обновим политику через командную строку: ![](https://i.imgur.com/JD22wQu.png) **Эксплуатация уязвимостей контроллера домена** * Скачаем репозиторий с эксплоитом zerologon, прочитаем README: ![](https://i.imgur.com/XRl48rB.png) * С помощью команды, указанной в README, обнулим пароль машинной учетки контроллера домена: ![](https://i.imgur.com/l48S9R6.png) * С помощью пакета утилит impacket, а конкретнее - secretsdump, сдампим базу NTDS контроллера домена: ![](https://i.imgur.com/iRMtNzB.png) ![](https://i.imgur.com/RDpaqGR.png) * С помощью полученных хешей учетных данных выполним тестовую команду на удаленной машине: ![](https://i.imgur.com/BoAvfRi.png) **Поиск следов эксплуатации уязвимостей** * В журнале System видим появление ошибки Netlogon: ![](https://i.imgur.com/q9ULr1f.png) * В журнале Security видим событие 4742 "Изменения машинной учетной записи": ![](https://i.imgur.com/UjVD5z3.png) * Проанализируем его. Нас настораживает ANONYMOUS LOGON и дата/время в поле Password Last Set - пароль УЗ был изменен: ![](https://i.imgur.com/fISYaKA.png) * Пароль на машинной учетной записи может менять только служба NETWORK SERVICE при плановом обновлении паролей. Когда это происходит, в журнале System появляется событие 5823. Найдем это событие через фильтр: ![](https://i.imgur.com/tcoKy2t.png) * Видим что последнее такое событие было сгенерировано намного раньше при плановой смене пароля. Для того, чтобы подтвердить, что это было плановое событие, найдем событие 4742 за тот же день, что и событие 5823: ![](https://i.imgur.com/gve7zWC.png) * Также увидим, что в журнале событий Directory Service появилось события дампа NTDS: ![](https://i.imgur.com/In9zsOV.png)