lateral movement что это
Как системы анализа трафика обнаруживают тактики хакеров по MITRE ATT&CK, часть 4
В предыдущих постах (первая, вторая и третья части) мы рассмотрели техники семи тактик MITRE ATT&CK:
Перемещение внутри периметра (lateral movement)
Злоумышленники используют техники перемещения внутри периметра для получения доступа и управления удаленными системами в сети, для установки вредоносных программ и постепенного расширения присутствия в инфраструктуре. Основная цель атакующих — определение администраторов в сети, их компьютеров, ключевых активов и данных, чтобы в конечном счете получить полный контроль над инфраструктурой.
Ниже приведены описания техник перемещения внутри периметра, которые можно обнаружить, анализируя трафик. Всего их девять.
1. T1175: Component Object Model and Distributed COM
Использование технологий COM или DCOM для выполнения кода на локальной или удаленных системах при продвижении по сети.
Что делает PT Network Attack Discovery (PT NAD): когда эта технология используется для доступа к удаленным системам, ее можно обнаружить, анализируя трафик. PT NAD детектирует подозрительные DCOM-вызовы, которые злоумышленники обычно используют для продвижения по сети.
2. T1210: exploitation of remote services
Эксплуатация уязвимости в сетевых сервисах для перемещения по сети.
Что делает PT NAD: обнаруживает эксплуатацию распространенных уязвимостей. Среди них — уязвимости в протоколах SMB (MS17-010) и Print System Remote Protocol (MS-RPRN), в СУБД Redis, в системе конфигурации сетевых устройств rConfig.
3. T1075: pass the hash
Метод аутентификации пользователя без доступа к его паролю в открытом виде. Атакующие обходят стандартные этапы аутентификации, на которых требуется ввод пароля, и переходят непосредственно к той части аутентификации, которая использует хеш пароля. Хеши злоумышленники заполучают заранее с помощью техник получения учетных данных.
Что делает PT NAD: детектирует разные признаки сетевой активности хакерской утилиты Mimikatz, которую злоумышленники используют для атаки overpass the hash (развитие атаки pass the hash).
4. T1097: pass the ticket
Метод аутентификации в системе с использованием билетов Kerberos без доступа к паролю учетной записи. Он может использоваться атакующими как первый шаг перемещения по периметру в удаленную систему.
Что делает PT NAD: детектирует подготовительный этап техники pass the ticket, выявляет передачу по сети файлов с экспортированными билетами Kerberos.
5. T1076: remote desktop protocol
Техника, благодаря которой злоумышленники заходят на удаленную систему по протоколу удаленного рабочего стола RDP, если он разрешен для использования в сети и позволяет подключаться к пользователям, зная их учетные данные.
Что делает PT NAD: в программе можно отфильтровать все сохраненные сессии по протоколам (например, RDP) и анализировать каждую подозрительную. Функция полезна при проведении расследований и проактивного поиска угроз (threat hunting).
6. T1021: remote services
Использование действующих учетных записей для входа в службу, предназначенную для приема удаленных подключений, например Telnet, SSH или VNC. После этого атакующие смогут выполнять действия от имени вошедшего в систему пользователя.
Что делает PT NAD: автоматически детектирует подключения по протоколу VNC и активность трояна EvilVNC. Данный троян скрытно устанавливает VNC-сервер на хост жертвы и автоматически его запускает. Для проверки легитимности удаленных подключений по протоколам SSH и TELNET, пользователи PT NAD могут отфильтровать все сессии с такими подключениями и проанализировать каждую подозрительную.
7. T1072: third-party software
Техника, благодаря которой злоумышленники получают доступ к ПО для администрирования сети (стороннее ПО и системы развертывания ПО) и с его помощью запускают зловредный код. Примеры стороннего ПО: SCCM, VNC, HBSS, Altiris. В случае получения доступа к таким системам противник может удаленно запустить код на всех узлах, подключенных к системе развертывания ПО, мониторинга или администрирования.
Что делает PT NAD: автоматически выявляет в сети работу такого ПО. Например, правила срабатывают на факты подключения по протоколу VNC и активность трояна EvilVNC, который скрытно устанавливает VNC-сервер на хост жертвы и автоматически запускает этот сервер.
8. T1077: Windows Admin Shares
Использование скрытых сетевых папок, доступных только администраторам, например C$, ADMIN$, IPC$. Они дают возможность удаленного копирования файлов и другие административные функции.
Что делает PT NAD: пример обнаружения
PT NAD обнаружил удаленное выполнение команд через диспетчера управления службами SCM (Service Control Manager). Это возможно только имея доступ к административным общим ресурсам Windows Admin Shares.
Обнаружение применения техники T1077: Windows Admin Shares
Если открыть сессию, видно, что в ней же сработало правило на инструмент Impacket. Он использует сетевой доступ к C$ для получения результатов выполнения команд.
Карточка сессии с отображением скачанных файлов из сетевой папки администратора
9. T1028: Windows Remote Management
Использование службы и протокола Windows, который позволяет пользователю взаимодействовать с удаленными системами.
Что делает PT NAD: видит сетевые соединения, установленные с помощью Windows Remote Management. Такие сессии детектируются правилами в автоматическом режиме.
Сбор данных (collection)
Тактику collection злоумышленники используют для сбора информации, которую они планируют затем украсть с помощью техник эксфильтрации данных. Типичные источники данных: разные виды дисков, браузеры, аудио, видео и электронная почта.
Анализ трафика может указать на применение в сети двух техник сбора данных.
1. T1039: data from network shared drive
Сбор данных с удаленных систем, на которых есть общедоступные сетевые диски.
Что делает PT NAD: пример обнаружения
Передача файлов с сетевых дисков видна по трафику, сессии с передачей файлов можно подробно изучить в PT NAD.
Проверим гипотезу, что злоумышленники воспользовались техникой T1039 и смогли получить доступ к файловому серверу финансового департамента компании. Для этого отфильтруем все сессии по признаку активности с IP-адреса файлового хранилища и найдем среди них подключения, в которых были скачаны файлы. Зайдя в карточку одной из таких сессий, видим, что был скачан файл TopSecretReport_2020.
Скачав и посмотрев файл, мы понимаем, какой конкретно информацией удалось завладеть злоумышленникам.
2. T1185: man in the browser
Техника, благодаря которой атакующий, проэксплуатировав уязвимость браузера жертвы, меняет веб-контент и перехватывает информацию. Один из примеров: атакующий внедряет в браузер ПО, которое позволяет перехватывать cookie, HTTP-сессии, клиентские SSL-сертификаты и использовать браузер для аутентификации и перехода в интрасеть.
Что делает PT NAD: автоматически обнаруживает атаку man in the browser, основанную на внедрении в загружаемые веб-страницы вредоносных скриптов. PT NAD детектирует такие атаки двумя способами: по скомпрометированным сертификатам, которые ранее использовались в подобных атаках, и по характерной сетевой активности вредоносных программ, нацеленных на внедрение кода в браузер (например, Zeus).
Вместо заключения
Напоминаем, что полный маппинг PT NAD на матрицу MITRE ATT&CK опубликован на Хабре.
В следующих материалах мы расскажем про остальные тактики и техники хакеров и о том, как их помогает выявлять NTA-система PT Network Attack Discovery. Оставайтесь с нами!
Как обнаруживать перемещение атакующих по сети
На проектах по анализу защищенности корпоративных информационных систем в 2019 году нашим пентестерам удалось преодолеть сетевой периметр 93% компаний. При этом в сеть 50% компаний можно было проникнуть всего за один шаг. Чтобы не дать реальным атакующим достичь цели, важно вовремя выявлять их активность. Один из критически важных этапов атаки — перемещение внутри периметра (lateral movement), когда злоумышленники расширяют свое присутствие в сети.
В этой статье я покажу, какая активность относится к перемещению внутри периметра и как, используя сетевой анализ, выявить применение такой тактики.
Что относится к перемещению внутри периметра
Для начала давайте рассмотрим несколько схем, которые помогут понять, на какие этапы делится атака.
Первая схема иллюстрирует жизненный цикл операций red team и отражает действия злоумышленника во время атаки на информационную систему:
Атакующий проводит внешнюю разведку (Recon)
Компрометирует систему (Initial Compromise)
Старается сохранить свое присутствие на этой системе (Establish Persistence)
Повышает права (Escalate Privileges)
Проводит внутреннюю разведку (Internal Recon)
Выбирает удобный для себя транспорт и осуществляет подключение к жертве (Lateral Movement)
Собирает и анализирует найденные данные (Data Analysis)
Опционально повторяет действия 4―7 (для других компонентов системы)
В завершение злоумышленник выносит найденные ценные данные (Exfiltration and Complete Mission)
Для Active Directory существует понятие Kill Chain, которое отражает цепочку действий, необходимых для полной компрометации домена.
Атакующий компрометирует первую машину и проводит внутреннюю разведку
Повышает на машине локальные права
Получает привилегированные учетные данные
Проводит разведку с правами администратора
Использует удобный способ для удаленного выполнения кода
Повторяет шаги 2—5 до получения учетных данных доменного администратора
Добивается максимальных привилегий в домене и окончательно закрепляется в системе
Находит ценные данные, используя полный доступ ко всем частям системы
Выносит найденные данные
Первая и вторая схемы часто используются на практике, но не отражают конкретных вариантов действий злоумышленника на том или ином этапе.
ATT&CK Matrix for Enterprise
Многие наверняка слышали о матрице ATT&CK, она решает эту проблему. Ее разработала и поддерживает некоммерческая организация MITRE. Матрица отражает тактики и техники атакующих и основана на реальных наблюдениях большого количества экспертов. В заголовках находятся тактики, в ячейках таблицы – техники. Ее часто используют при моделировании угроз и классификации атак. Мы тоже руководствуемся ею при изучении атак, после чего экспертиза поступает в наши продукты.
Lateral movement (или перемещение внутри периметра) характеризует то, как атакующий, используя существующие в системе механизмы, может перемещаться от одной машины к другой. К таким механизмам может относиться DCOM, программы для удаленного обновления приложений, удаленное копирование файлов или протокол удаленного рабочего стола. При успешной начальной компрометации системы с использованием техник перемещения внутри периметра злоумышленник может завладеть учетными записями привилегированных пользователей и быстро расширить свое присутствие вплоть до полного контроля над инфраструктурой.
Пример перемещения злоумышленника внутри периметра
Рассмотрим детально один из вариантов действий злоумышленника внутри инфраструктуры. В данном случае изначальная компрометация нас мало интересует, так как она может быть любой и мало влияет на ход дальнейшей атаки.
Итак, в инфраструктуре есть:
devops-инженер agusev, ответственный за этот сервер;
системный администратор gpavlov с двумя учетными записями;
контроллер домена DC с учетной записью Administrator.
У пользователей agusev и gpavlov есть личные компьютеры внутри домена с соответствующими именами.
1. Изначальная компрометация
Мы начинаем с того, что гипотетический атакующий смог попасть и закрепиться на сервере для тестирования приложений. На нем он находит учетные данные некоего devops-инженера agusev, который использовал этот сервер со своей доменной машины. Но перед злоумышленником стоит вопрос о том, как можно развить атаку внутрь инфраструктуры.
2. Внутренняя разведка с BloodHound через DCOM (T1021.003)
Он начинает с разведки с помощью BloodHound. Как выяснилось, agusev ранее использовал Distributed Component Object Model (DCOM). Поэтому злоумышленник использует этот же протокол для запуска SharpHound (ингестор ПО BloodHound) на машине AGUSEV. В нашем случае для запуска был использован объект Microsoft Management Console (MMC) 2.0.
Сам по себе DCOM служит для поддержки связи между объектами на различных компьютерах и часто используется в приложениях из нескольких компонентов, которые общаются друг другом через сеть. Существует множество стандартных объектов, которые можно использовать через DCOM. В их числе и объекты, которые позволяют удаленно выполнить код (такие как MMC 2.0). Подробнее об этом можно почитать здесь и здесь.
Таким образом, злоумышленник получил основную информацию о домене, пользователях, группах и доменных машинах.
Анализ связей объектов AD в ПО BloodHound
С помощью анализа графа BloodHound атакующий выбирает своей целью учетную запись системного администратора gpavlovAdm, так как она входит в группы локальных и доменных администраторов.
3. Подбор пароля через RDP-сессию (T1021.001 и T1570)
Злоумышленник организует RDP-сессию с подконтрольного сервера на машину AGUSEV. Через эту RDP-сессию он передает инструмент kerbrute (https://github.com/ropnop/kerbrute), с помощью которого хочет подобрать пароль к учетной записи gpavlovAdm.
Kerbrute проходится по словарю и не получает ни одной успешной аутентификации. Атакующий делает вывод, что для этой учетной записи был выбран достаточно стойкий пароль. Просмотрев повторно похожие по имени учетные записи через BloodHound, он находит учетную запись gpavlov. Исходя из похожести имен есть все основания полагать, что на машине GPAVLOV сохранились учетные данные и gpavlov, и gpavlovAdm.
Просмотр пользователей домена в ПО BloodHound
Следующим шагом злоумышленник успешно подбирает к ней пароль с помощью того же словаря и kerbrute.
4. Получение учетной записи системного администратора c помощью smbexec (T1021.002)
Итак, у атакующего под контролем учетная запись gpavlov и пользователь является администратором на своей машине (а значит, открыты системные шары). Это позволяет без препятствий воспользоваться скриптом smbexec из Impacket. Цель та же, что и была, — получение учетных данных gpavlovAdm. Он использует mimikatz в качестве полезной нагрузки и библиотеку SharpSploit (Github).
5. Компрометация контроллера домена
С помощью mimikatz и SharpSploit злоумышленник получил учетные данные системного администратора. На этапе разведки он узнал, что этот аккаунт является привилегированным и позволяет произвести дамп ntds.dit. Осуществить план позволяет скрипт secretsdump из Impacket (Github).
После этого домен полностью переходит под контроль атакующего. Для наглядности мы сделали маппинг такой атаки на матрицу ATT&CK.
Список техник в атаке
Рассмотрим анализ такой атаки на примере NTA-системы PT Network Attack Discovery. PT NAD анализирует трафик на уровнях L2—L7, выявляет атаки и хранит сырой трафик и метаданные, что полезно при расследованиях.
Расследование инцидента
Были ли нетипичные соединения внутри инфраструктуры?
С помощью дашбордов по серверам и, особенно, по основным протоколам можно выявлять несанкционированную активность. К примеру, анализ протоколов показывает количество сессий по RDP — что были за данные, кто был клиентом, а кто сервером. Анализ этой информации показывает, что клиент находился внутри DMZ, а RDP-сервер внутри домена. Это странно, так как в легитимном сценарии активность могла бы идти с компьютера devops-инженера на сервер, а не наоборот.
Дашборды PT Network Attack Discovery
Что еще было между узлами, кроме подозрительной RDP-сессии?
Нашлась SMB-активность с использованием DCERPC. Анализ операций RPC позволяет быстро обнаружить использование DCOM-протокола и ПО Impacket. Эта активность четко относится системой к lateral movement и помечается соответствующим образом.
Оповещение о найденной атаке с использованием DCOMExec из Impacket
Далее можно найти дополнительные подробности в сессиях — например, выявить паттерны инструментов Impacket. Вызов cmd.exe из system32 также выглядит подозрительно. Внутри команды мы видели HTTP-ссылку.
Загружалось ли что-то на АРМ для развития атаки?
Дашборд файлов показал, что был загружен файл со случайным именем; сетевой анализ сам по себе не позволит понять, что это за файл. Однако анализ «соседних» сессий позволит обнаружить активность, похожую на разведку домена — например, анализ SPN-имен служб в Active Directory. Вероятно, злоумышленники таким образом выбирают цель для атаки.
Оповещение о найденной атаке по протоколу LDAP
Система обнаруживает разведку по протоколу LDAP. Примечательно, что все действия произошли в рамках одной сессии. Это говорит о том, что для атаки, скорее всего, использовался автоматизированный инструмент и, вероятно, им был BloodHound. Вернувшись к начальным шагам анализа, можно осуществить фильтрацию трафика, но уже по протоколу Kerberos. Было обнаружено 8380 сессий за короткий интервал времени с одного узла: это явно ненормально. PT NAD просигнализировал о возможном подборе пароля по протоколу Kerberos.
Сессии по протоколу Kerberos
К чему подбирали пароль? Удалось или нет?
Анализ сессий позволяет узнать, что подбирался пароль к учетным записям пользователей gpavlovAdm и gpavlov. При ошибке аутентификации Kerberos-сервер (KDC) отправляет сообщение с ошибкой. PT NAD позволяет исключить сессии с неудачной аутентификацией и найти только успешные сессии. Успешной аутентификации за время атаки для пользователя gpavlovAdm не было найдено, значит — пароль не был подобран. Для gpavlov была найдена успешная аутентификация, это значит, что пароль был скомпрометирован.
Использование аккаунта gpavlov для загрузки SharpSploit
Использовались ли скомпрометированные данные? Если да, то для чего?
Зная это, мы можем проанализировать любые соединения с использованием этих учетных данных. Так можно увидеть попытку открытия Service Control Manager с помощью Impacket, создание сервиса и загрузку файла sharpsloit.dll.
Подтверждение факта загрузки SharpSploit
Ранее пароль подбирался только к двум учетным записям, а первые неудачные соединения были с учетной записью gpavlovAdm. Исходя из этого можно предположить, что цель атакующего — аккаунт gpavlovAdm. На дашборде мы видим успешную аутентификацию с его использованием и подключение к контроллеру домена. Вкладка PT NAD с атаками показывает, что аккаунт был использован для доступа к SCM, а также дампа данных, включая SAM, LSA, SECURITY и NTDS. На этой стадии можно сказать, что домен был полностью скомпрометирован и находится под контролем злоумышленника.
Оповещения о дампе реестра контроллера домена
Как противодействовать lateral movement
Существует ряд шагов, которые позволяют минимизировать риск или полностью предотвратить атаки, подобные описанной выше. Для этого следует:
ограничить избыточное использование системных COM-объектов, не связанных с приложением (например, MMC 2.0);
блокировать учетные записи после большого количество ошибок аутентификации;
ограничить права учетных записей helpdesk и использовать подход Just Enough Administration;
запретить удаленный вход для учетных записей локальных администраторов;
блокировать использование System.Management.Automation.dll.
Автор: Егор Подмоков, специалист отдела экспертных сервисов PT Expert Security Center (PT ESC)
Как обнаруживать перемещение атакующих по сети
В этой статье я покажу, какая активность относится к перемещению внутри периметра и как, используя сетевой анализ, выявить применение такой тактики.
Что относится к перемещению внутри периметра
Для начала давайте рассмотрим несколько схем, которые помогут понять, на какие этапы делится атака.
Первая схема иллюстрирует жизненный цикл операций red team и отражает действия злоумышленника во время атаки на информационную систему:
Атакующий проводит внешнюю разведку (Recon)
Компрометирует систему (Initial Compromise)
Старается сохранить свое присутствие на этой системе (Establish Persistence)
Повышает права (Escalate Privileges)
Проводит внутреннюю разведку (Internal Recon)
Выбирает удобный для себя транспорт и осуществляет подключение к жертве (Lateral Movement)
Собирает и анализирует найденные данные (Data Analysis)
Опционально повторяет действия 4―7 (для других компонентов системы)
В завершение злоумышленник выносит найденные ценные данные (Exfiltration and Complete Mission)
Для Active Directory существует понятие Kill Chain, которое отражает цепочку действий, необходимых для полной компрометации домена.
Атакующий компрометирует первую машину и проводит внутреннюю разведку
Повышает на машине локальные права
Получает привилегированные учетные данные
Проводит разведку с правами администратора
Использует удобный способ для удаленного выполнения кода
Повторяет шаги 2—5 до получения учетных данных доменного администратора
Добивается максимальных привилегий в домене и окончательно закрепляется в системе
Находит ценные данные, используя полный доступ ко всем частям системы
Выносит найденные данные
Первая и вторая схемы часто используются на практике, но не отражают конкретных вариантов действий злоумышленника на том или ином этапе.
ATT&CK Matrix for Enterprise
Lateral movement (или перемещение внутри периметра) характеризует то, как атакующий, используя существующие в системе механизмы, может перемещаться от одной машины к другой. К таким механизмам может относиться DCOM, программы для удаленного обновления приложений, удаленное копирование файлов или протокол удаленного рабочего стола. При успешной начальной компрометации системы с использованием техник перемещения внутри периметра злоумышленник может завладеть учетными записями привилегированных пользователей и быстро расширить свое присутствие вплоть до полного контроля над инфраструктурой.
Пример перемещения злоумышленника внутри периметра
Рассмотрим детально один из вариантов действий злоумышленника внутри инфраструктуры. В данном случае изначальная компрометация нас мало интересует, так как она может быть любой и мало влияет на ход дальнейшей атаки.
Итак, в инфраструктуре есть:
devops-инженер agusev, ответственный за этот сервер;
системный администратор gpavlov с двумя учетными записями;
контроллер домена DC с учетной записью Administrator.
У пользователей agusev и gpavlov есть личные компьютеры внутри домена с соответствующими именами.
1. Изначальная компрометация
Мы начинаем с того, что гипотетический атакующий смог попасть и закрепиться на сервере для тестирования приложений. На нем он находит учетные данные некоего devops-инженера agusev, который использовал этот сервер со своей доменной машины. Но перед злоумышленником стоит вопрос о том, как можно развить атаку внутрь инфраструктуры.
2. Внутренняя разведка с BloodHound через DCOM (T1021.003)
Он начинает с разведки с помощью BloodHound. Как выяснилось, agusev ранее использовал Distributed Component Object Model (DCOM). Поэтому злоумышленник использует этот же протокол для запуска SharpHound (ингестор ПО BloodHound) на машине AGUSEV. В нашем случае для запуска был использован объект Microsoft Management Console (MMC) 2.0.
Таким образом, злоумышленник получил основную информацию о домене, пользователях, группах и доменных машинах.
Анализ связей объектов AD в ПО BloodHound
С помощью анализа графа BloodHound атакующий выбирает своей целью учетную запись системного администратора gpavlovAdm, так как она входит в группы локальных и доменных администраторов.
3. Подбор пароля через RDP-сессию (T1021.001 и T1570)
Злоумышленник организует RDP-сессию с подконтрольного сервера на машину AGUSEV. Через эту RDP-сессию он передает инструмент kerbrute (https://github.com/ropnop/kerbrute), с помощью которого хочет подобрать пароль к учетной записи gpavlovAdm.
Kerbrute проходится по словарю и не получает ни одной успешной аутентификации. Атакующий делает вывод, что для этой учетной записи был выбран достаточно стойкий пароль. Просмотрев повторно похожие по имени учетные записи через BloodHound, он находит учетную запись gpavlov. Исходя из похожести имен есть все основания полагать, что на машине GPAVLOV сохранились учетные данные и gpavlov, и gpavlovAdm.
Просмотр пользователей домена в ПО BloodHound
Следующим шагом злоумышленник успешно подбирает к ней пароль с помощью того же словаря и kerbrute.
4. Получение учетной записи системного администратора c помощью smbexec (T1021.002)
Итак, у атакующего под контролем учетная запись gpavlov и пользователь является администратором на своей машине (а значит, открыты системные шары). Это позволяет без препятствий воспользоваться скриптом smbexec из Impacket. Цель та же, что и была, — получение учетных данных gpavlovAdm. Он использует mimikatz в качестве полезной нагрузки и библиотеку SharpSploit (https://github.com/cobbr/SharpSploit).
5. Компрометация контроллера домена
С помощью mimikatz и SharpSploit злоумышленник получил учетные данные системного администратора. На этапе разведки он узнал, что этот аккаунт является привилегированным и позволяет произвести дамп ntds.dit. Осуществить план позволяет скрипт secretsdump из Impacket (https://github.com/SecureAuthCorp/impacket/blob/master/examples/secretsdump.py).
После этого домен полностью переходит под контроль атакующего. Для наглядности мы сделали маппинг такой атаки на матрицу ATT&CK.
Список техник в атаке
Расследование инцидента
Были ли нетипичные соединения внутри инфраструктуры?
С помощью дашбордов по серверам и, особенно, по основным протоколам можно выявлять несанкционированную активность. К примеру, анализ протоколов показывает количество сессий по RDP — что были за данные, кто был клиентом, а кто сервером. Анализ этой информации показывает, что клиент находился внутри DMZ, а RDP-сервер внутри домена. Это странно, так как в легитимном сценарии активность могла бы идти с компьютера devops-инженера на сервер, а не наоборот.
Дашборды PT Network Attack Discovery
Что еще было между узлами, кроме подозрительной RDP-сессии?
Нашлась SMB-активность с использованием DCERPC. Анализ операций RPC позволяет быстро обнаружить использование DCOM-протокола и ПО Impacket. Эта активность четко относится системой к lateral movement и помечается соответствующим образом.
Оповещение о найденной атаке с использованием DCOMExec из Impacket
Далее можно найти дополнительные подробности в сессиях — например, выявить паттерны инструментов Impacket. Вызов cmd.exe из system32 также выглядит подозрительно. Внутри команды мы видели HTTP-ссылку.
Загружалось ли что-то на АРМ для развития атаки?
Дашборд файлов показал, что был загружен файл со случайным именем; сетевой анализ сам по себе не позволит понять, что это за файл. Однако анализ «соседних» сессий позволит обнаружить активность, похожую на разведку домена — например, анализ SPN-имен служб в Active Directory. Вероятно, злоумышленники таким образом выбирают цель для атаки.
Оповещение о найденной атаке по протоколу LDAP
Система обнаруживает разведку по протоколу LDAP. Примечательно, что все действия произошли в рамках одной сессии. Это говорит о том, что для атаки, скорее всего, использовался автоматизированный инструмент и, вероятно, им был BloodHound. Вернувшись к начальным шагам анализа, можно осуществить фильтрацию трафика, но уже по протоколу Kerberos. Было обнаружено 8380 сессий за короткий интервал времени с одного узла: это явно ненормально. PT NAD просигнализировал о возможном подборе пароля по протоколу Kerberos.
Сессии по протоколу Kerberos
К чему подбирали пароль? Удалось или нет?
Анализ сессий позволяет узнать, что подбирался пароль к учетным записям пользователей gpavlovAdm и gpavlov. При ошибке аутентификации Kerberos-сервер (KDC) отправляет сообщение с ошибкой. PT NAD позволяет исключить сессии с неудачной аутентификацией и найти только успешные сессии. Успешной аутентификации за время атаки для пользователя gpavlovAdm не было найдено, значит — пароль не был подобран. Для gpavlov была найдена успешная аутентификация, это значит, что пароль был скомпрометирован.
Использование аккаунта gpavlov для загрузки SharpSploit
Использовались ли скомпрометированные данные? Если да, то для чего?
Зная это, мы можем проанализировать любые соединения с использованием этих учетных данных. Так можно увидеть попытку открытия Service Control Manager с помощью Impacket, создание сервиса и загрузку файла sharpsloit.dll.
Подтверждение факта загрузки SharpSploit
Ранее пароль подбирался только к двум учетным записям, а первые неудачные соединения были с учетной записью gpavlovAdm. Исходя из этого можно предположить, что цель атакующего — аккаунт gpavlovAdm. На дашборде мы видим успешную аутентификацию с его использованием и подключение к контроллеру домена. Вкладка PT NAD с атаками показывает, что аккаунт был использован для доступа к SCM, а также дампа данных, включая SAM, LSA, SECURITY и NTDS. На этой стадии можно сказать, что домен был полностью скомпрометирован и находится под контролем злоумышленника.
Оповещения о дампе реестра контроллера домена
Как противодействовать lateral movement
Существует ряд шагов, которые позволяют минимизировать риск или полностью предотвратить атаки, подобные описанной выше. Для этого следует:
ограничить избыточное использование системных COM-объектов, не связанных с приложением (например, MMC 2.0);
блокировать учетные записи после большого количество ошибок аутентификации;
ограничить права учетных записей helpdesk и использовать подход Just Enough Administration;
запретить удаленный вход для учетных записей локальных администраторов;
блокировать использование System.Management.Automation.dll.
Автор: Егор Подмоков, специалист отдела экспертных сервисов PT Expert Security Center (PT ESC)