
Всем привет! На связи Дмитрий Федосов, руководитель отдела наступательной безопасности экспертного центра безопасности (PT ESC) Positive Technologies, и Владислав Дриев, ведущий специалист нашего подразделения. Мы развиваем технологии автопентеста в рамках продукта PT Dephaze. Сегодня хотим наглядно показать, как автоматизированный взлом собственной инфраструктуры помогает выявлять реальные векторы атак, которыми злоумышленники могут воспользоваться в любую минуту.
С момента запуска PT Dephaze наша команда провела более 60 «пилотов» в организациях России и не только. Мы проанализировали этот опыт, собрали обратную связь от клиентов и улучшили технологии. В этой статье предлагаем вместе погрузиться в процесс использования нашей системы автопентеста на основании опыта наших пользователей. Разберем результаты и варианты их использования в защите.
Статья носит исключительно информационный характер и не является инструкцией или призывом к совершению противоправных действий. Наша цель — рассказать о возможностях автоматического пентеста и показать, какие проблемы можно выявить с помощью него. Мы не критикуем проприетарные средства защиты, а лишь демонстрируем общие принципы проведения кибератак и типовые конфигурации, не соответствующие нормам безопасности согласно нашему опыту. Продукт PT Dephaze разрешается применять в конкретной инфраструктуре только с письменного согласия ее владельца. Авторы не несут ответственности за использование настоящей информации в противоправных целях.
Что внутри продукта и кому он пригодится
Формально наш продукт относится к решениям класса adversarial exposure validation (AEV) по классификации Gartner. Он позволяет в автоматическом режиме проводить тестирование внутренней инфраструктуры на проникновение, помогая контролировать уровень ее защищенности в перерывах между ручными пентестами. Тем компаниям, которые подобные работы не проводят (и очень зря), автопентест обеспечит базовое оценку защищенности безопасности. Мы, в свою очередь, рекомендуем проводить ручной пентест не реже одного раза в год.
Архитектура наших технологий имеет два основных компонента. Первый — сервер; фактически для пользователя это веб‑интерфейс для запуска пентестов и управления ими. Обычно для средств защиты выделяется отдельный сегмент в инфраструктуре — здесь и развертываем сервер. Сетевой доступ к нему можно настроить согласно политике ИБ компании, только для пользователей продукта.
Второй компонент — атакующие узлы, которые эмулируют активности пентестеров. Сегменты их развертывания зависят от модели нарушителя, которую предполагается протестировать. Это может быть, например, пользовательский сегмент, где располагаются АРМ сотрудников, сегмент ДМЗ или один из сегментов дочерних организаций, если речь идет про крупную компанию. Для атакующих узлов обычно не требуются дополнительные сетевые доступы — подойдут штатные настройки, действующие в сегменте. Если нужно охватить проверками больше систем, в том числе из других сегментов, можно расширить сетевой доступ. Иные белые списки, например для работы с антивирусами и решениями для защиты конечных устройств, не требуются.
Время развертывания продукта в пилотном режиме зависит от масштаба инфраструктуры и выстроенных процессов в организации. Например, одному из наших клиентов понадобилось всего два дня до запуска первого автопентеста в конфигурации с одним атакующим узлом.
Кому автопентест упростит работу
Основные пользователи — представители синей команды (blue team). Обычно это специалисты, которые пользуются сканерами безопасности и занимаются процессами VM (управление уязвимостями, Vulnerability Management). Поэтому мы максимально упрощали процесс эксплуатации продукта и интерпретации результатов.
Продукт автопентеста также пригодится внутренней красной команде (red team), которая имитирует атаки на инфраструктуру, чтобы найти недостатки и определить шаги по усилению киберзащиты. Если нужно будет провести однотипные проверки на большом сегменте, почему бы не автоматизировать эту задачу?
Запуск автопентеста
Давайте проведем запуск на лабораторном стенде. Мы оснастили его дополнительными серверами и сервисами, чтобы максимально приблизить тестовую инфраструктуру к реальным условиям.
Здесь всё просто:
Придумываем название, чтобы не забыть, что это за проверка и где она проходит.
-
Выбираем режим согласования пентеста.
В режиме «Все действия» с оператором системы будет согласован каждый шаг, ни одна атака не выполнится без явного подтверждения.
В режиме «Только опасные» будут согласовываться только те действия, которые приведут к деструктивным последствиям, например к блокировке учетной записи или сбою системы. Все угрозы размечены на основании нашего опыта. В интерфейсе есть описания потенциальных последствий, что позволяет оценить риски перед явным подтверждением.
В режиме «Без согласования» будут выполнены все возможные атаки, которые заложены в продукт. Мы не рекомендуем использовать этот режим в реальной инфраструктуре, он больше подходит для лабораторных стендов.

Выбираем агент и сетевой интерфейс. Если компания большая, можно в каждом филиале разместить по одному атакующему узлу. Кроме того, есть возможность к каждому узлу подключить несколько сетевых интерфейсов. Это удобно, когда у филиала много сетей (гостевая, продуктовая, пользовательская и другие) и нужно проверить различные модели нарушителей.
-
Вводим область тестирования, обозначая диапазон IP‑адресов. Можно добавить несколько областей и исключить чувствительные узлы.

-
Указываем дополнительные параметры пентеста, если нужно что‑то настроить под себя. Здесь можно скорректировать парольную политику, чтобы свести к минимуму шансы блокировки учетных записей, дополнительные порты, частоту сканирования. В данном случае оставим стандартный набор параметров.

Можем добавить учетную запись — это необязательно, но может позволить сделать проверки серым ящиком по модели внутреннего нарушителя. Поддерживаются учетные данные Active Directory, PostgreSQL, Windows, SMB, SSH. Этот пентест запустим черным ящиком без учетных записей.
-
Можем обозначать конкретные цели тестирования — тоже необязательно. Можно задать проверку сетевой доступности и (или) выполнение команды на конкретном узле. По завершении всех операций пентест остановится. Если не указывать цели, сканирование будет комплексным и покажет способы эксплуатации всех найденных уязвимостей и особенностей конфигураций в инфраструктуре. В данном случае цели обозначать не будем.

Нажимаем «Запустить» и всё!
Подождем некоторое время, пока будут первые результаты.
Сколько ждать
Банально, но факт: время выполнение тестирования в GOAD зависит от объема сегмента, параметров проверки, режима согласования действий, скорости сети, количества доступных сервисов, числа выявленных уязвимостей.
Однако опыт «пилотов» показывает, что существенный результат, например в виде максимального повышения привилегий в домене Active Directory, при использовании стандартных параметров запуска можно получить за период от двух часов до нескольких суток. Если нужно протестировать все системы, проверить возможность реализации разных векторов атак, стоит выделить до семи дней, причем включая выходные. В нерабочие часы могут запускаться какие‑то скрипты автоматизации, и нужно проверить, есть ли здесь недостатки безопасности и можно ли использовать их в атаках.
Результаты автопентеста
Мы подождали около 30 минут. Смотрим, что удалось найти за это время. Визуально мы уже понимаем, что есть какие‑то результаты, с которыми нужно подробнее ознакомиться.

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

По клику на любую строку открывается карточка с подробностями. Давайте «провалимся» в уязвимость в telnetd. Видим идентификатор и понимаем, что этот недостаток — это уязвимость. Еще видим уязвимый узел, рекомендации по защите и атакующие действия, в которых он был использован. Если недостаток будет использован еще и в других сценариях, запись об этом появится в соответствующем поле — искать пересечения вручную не придется.

Кстати, о недостатке в telnetd стало известно в начале 2026 года. Этот компонент часто используется во внутренней инфраструктуре, и обнаруженная уязвимость имеет публичный эксплойт, — данные о ней актуальны для большинства инфраструктур. Поэтому мы оперативно добавили ее в продукт. Мы непрерывно отслеживаем трендовые недостатки и актуальные киберугрозы, анализируем итоги ручных пентестов и проектов по результативной кибербезопасности. Полученная экспертиза оперативно интегрируется в наш продукт.
Кликаем на атакующее действие — попадаем в отдельную карточку. Здесь смотрим, что конкретно было сделано во время проверки, на каком узле, какой уровень опасности имеет уязвимость и как рекомендуется организовать мониторинг узла. Также здесь указано точное время проведения проверки, чтобы потом можно было найти нужные события в СЗИ и убедиться, что все работает корректно.

Вкладка «Аудит паролей»
Получен доступ к нескольким учетным записям — список также можно выгрузить в CSV. Это удобно и может пригодиться, чтобы после проведения пентеста сменить пароли скомпрометированных учетных записей.

Первая учетная запись была скомпрометирована через уязвимость в МФУ Kyocera с помощью публично доступного эксплойта. Здесь же читаем описание атакующих действий и смотрим входные и выходные данные. Понимаем, что в ходе эксплуатации была взломана учетная запись пользователя baba.yaga.

Кликаем на недостаток, чтобы изучить рекомендации по его устранению.

Вкладка «Согласование»
Появились действия, которые мы должны одобрить или отклонить. Например, извлечение учетных данных из памяти LSASS — процесса в операционных системах Windows. Видим уровень опасности и потенциальные последствия.

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

Вкладка «Угрозы»
В процессе автопентеста удалось получить полный контроль над несколькими узлами и ресурсами домена, а также добраться до важной информации. В интерфейсе есть сведения, сколько раз это сделано и на скольких узлах.

Давайте кликнем на вкладку «Полный контроль над ресурсами домена», чтобы узнать подробности. Видим, что для достижения цели был атакован центр сертификации путем эксплуатации техники ESC4. Затем была создана новая учетная запись с помощью сертификата, после она была добавлена привилегированную группу. Далее получилось провести атаку DCSync, позволяющую выдавать себя за контроллер домена, и получать хеши любых пользователей, в данном случае — всех привилегированных.

Мы можем «провалиться» в каждое из действий и изучить его подробнее.

Помимо прочего, в этих карточках есть ссылки на цепочки атак. Давайте обратимся к цепочке атак, которая указана в экспертизе «Создание пользователя домена и добавление его в привилегированную группу». В общем виде она выглядит так, как представлено ниже; каждое действие на графе нужно для того, чтобы выполнилось одно из следующих.

Любой сценарий начинается с быстрого сканирования для изучения сетевой архитектуры. Выполняется идентификация сервисов, поиск контроллеров домена. После уже на обнаруженных сервисах выполняются экспертизы. Схема позволяет изучить логику атаки и проследить последовательность шагов. В данном случае мы сразу видим сканирование инфраструктуры и эксплуатацию уязвимости CVE-2022-1026 для получения учетной записи. Ранее мы уже подробно рассмотрели эту атаку.

Все доменные учетные данные, которые получает продукт, сначала валидируются на контроллере и только после этого — на остальных узлах. Это сделано для защиты от блокировки учетных записей.
Мы видим, что выполнялся дамп веток реестра HKLM\SAM и HKLM\SECUIRITY на узле 10.50.31.84.

Если открыть карточку действия, то мы увидим: дамп был сделан от имени учетной записи baba.yaga, доступ к которой мы получили ранее. Соответственно, можем сделать вывод, что захваченная учетная запись имела привилегии локального администратора на узле.

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

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

Далее видим валидацию полученных учетных записей и эксплуатацию техники ESC4.

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


В результате была успешно применена техника ESC4, получен сертификат от имени привилегированного пользователя. С его помощью создана новая учетная запись и добавлена в привилегированную группу.

Вкладка «Артефакты»
Здесь собирается все, что генерируется во время автопентеста. Например, в процессе нашей проверки была создана таблица в PostgreSQL, две учетные записи и сертификат. В разделе есть отдельный столбец, в котором отмечается, удалены артефакты или нет. Если удалены, то никаких дополнительных действий предпринимать не нужно. Если нет, то нужно обработать их в соответствии с политикой вашей организации. Список также можно выгрузить в CSV.

Кнопка «Скачать отчет»
Находится в правом верхнем углу.

Нажимаем и моментально получаем отчет в PDF‑формате.

В самом начале представлена общая информация: дата, параметры пентеста, реализованные угрозы, оценка защищенности.


Затем идет разбор атак, которые разделяются на успешные и неуспешные.

В конце — описание обнаруженных недостатков безопасности и рекомендации по их устранению.

И здесь мы видим, что на одном из узлов сработал дамп процесса lsass. С учетом того, что на остальных узлах он закончился неуспешно, можно сделать вывод, что на этом узле, скорее всего, что‑то не так с настройкой СЗИ, — это повод его донастроить. Регулярные пентесты могут помочь в выявлении подобных особенностей.
Не забываем о безопасности автопентеста
Во время автопентеста выполняются действия, эмулирующие атаки злоумышленника. Они могут повлиять на инфраструктуру, поэтому мы серьезно подходим к вопросу безопасности. Базовая опция согласования атак позволяет оператору контролировать процесс и избегать нежелательных последствий.
Кроме того, мы учитываем, что во время сканирования реальный злоумышленник уже может находиться в инфраструктуре. Нам нельзя облегчать ему задачу. Поэтому при повышении привилегий в сети наши алгоритмы создают новые учетные записи с уникальными паролями. Даже если узел ранее был скомпрометирован, это не даст киберпреступнику никакой полезной информации.
Мы также контролируем распространение привилегированных учетных данных внутри инфраструктуры. Например, записи администраторов домена не используются для получения доступа к каждому узлу Active Directory, чтобы у атакующего не было шанса их перехватить.
А еще в интерфейсе обнаруженные учетные данные маскируются — даже оператор не видит их в полном объеме. Это поможет избежать утечек или злоупотребления.
Как использовать результаты сканирований
Управление уязвимостями
Данные автопентеста — это инструмент для помощи в решении задач по управлению уязвимостями (vulnerability management, VM). Результаты помогут правильно приоритизировать недостатки, выделить самые уязвимые узлы и сегменты. Если проводить такие проверки достаточно часто и регулярно, это позволит всегда быть в курсе реальной защищенности инфраструктуры.
Ретроспективный анализ
Не стоит исключать вероятность, что обнаруженные векторы атак уже были использованы злоумышленниками. Результаты автопентеста также надо использовать для ретроспективного анализа, чтобы убедиться, что этим вектором никто, кроме продукта и пентестеров, не использовался. Причем надо провести такой анализ на всю глубину логирования. Если окажется, что подобные уязвимости уже эксплуатировались и это не результаты проведенного пентеста или red teaming, то необходимо срочно обратиться за помощью в команду реагирования на инциденты (Incident Response).
Настройка средств защиты
Решения класса EPP (endpoint protection platform) и EDR (endpoint detection and response). С помощью автопентеста можно непосредственно проверить, срабатывают ли эти продукты на конкретных узлах и корректно ли они настроены. Например, PT Dephaze с помощью штатных инструментов пытается извлечь учетные данные из процесса lsass, который считается одним из самых защищенных в операционных системах Windows. В большой инфраструктуре зачастую мы встречаем узлы, которые позволяют завладеть ценными учетными данными из‑за отсутствия защиты конечных точек или их неправильной конфигурации.
Системы SIEM (security information and event management). На одном из «пилотов» коллеги с помощью решения класса SIEM выявили, что в группу доменных пользователей был добавлен администратор dphz_adm_XXXXX. Таким образом, они проверили корректность заведения журналов контролеров домена и работоспособность корреляционных правил. Причем проверили на практике, выявив потенциальный инцидент в процессе работы автопентеста с возможностью также обработать процесс реагирования на него.
Продукты класса NTA (network traffic analysis). Наши технологии оставляют следы своей активности не только на конечных устройствах, но и в трафике. Это позволяет проверить, насколько удачно выбраны точки заведения трафика в NTA‑решение и с какой эффективностью выявляются атаки.
Заключение
А теперь резюмируем. Автопентест — это решение, которое способно автоматизированно оценивать защищенность ИТ‑инфраструктуры и выявлять реальные векторы атак. Он позволяет оценивать качество внедрения различных СЗИ и тренировать команду SOC на практике, тем самым повышая готовность к выявлению и пресечению реальных инцидентов. Аналогично можно тренировать процесс реагирования (блокировку захваченных и созданных учетных записей, изоляцию скомпрометированных хостов, смену учетных данных пользователя krbtgt и так далее) — это позволяет проверить имеющиеся плейбуки и выявить неочевидные сложности. Все это, конечно же, можно сделать руками. Но только продуктовая реализация позволяет использовать пентест когда угодно (например, утром или ночью в праздничные дни) и проверять, реально ли вы готовы противостоять хакерам именно сейчас ;)
Если вы заинтересовались, записаться на пилот и попробовать продукт можно на нашем сайте. Приходите, будем рады!

Дмитрий Федосов
Руководитель отдела наступательной безопасности экспертного центра безопасности (PT ESC) Positive Technologies

Владислав Дриев
Ведущий специалист отдела наступательной безопасности экспертного центра безопасности (PT ESC) Positive Technologies
KuroiOokami77
Круто, а можно этот ваш продукт с своей инфраструктуре попробовать?
ElvenSailor
+1
ptsecurity Автор
Можно записаться на пилот, он бесплатный. https://ptsecurity.com/products/dephaze/#main-form-dephaze