На пентесте объекта КИИ второй категории значимости - теплоснабжающая организация, Siemens SIMATIC S7-300 на подстанциях - нашёл прямой маршрут из корпоративного VLAN до ПЛК через неуправляемый коммутатор. Nmap с NSE-скриптом
s7-info вернул модель, серийный номер и версию прошивки контроллера за 12 секунд. Категорирование этого объекта заняло шесть месяцев и три пересылки акта в ФСТЭК. Между требованиями 187-ФЗ КИИ на бумаге и реальным состоянием защиты промышленного сегмента - пропасть, которую закрывает только практическая оценка защищённости. Здесь не пересказ закона. Разбираю, как проводить пентест КИИ: от разведки промышленных протоколов до построения kill chain в OT-среде, не уронив при этом технологический процесс.Как категорирование объектов КИИ определяет скоуп пентеста
187-ФЗ делит мир на субъектов КИИ (13 отраслей: энергетика, транспорт, связь, здравоохранение, финансы и другие) и объекты КИИ - информационные системы, сети и АСУ этих субъектов. Результат категорирования - присвоение объекту одной из трёх категорий значимости или признание объекта незначимым. Для пентестера это определяет всё: глубину проверки, набор мер из приказа ФСТЭК №239 и ограничения на допустимые воздействия.Значимый объект КИИ (ЗОКИИ) 1-й категории - максимальные требования по защите КИИ 187-ФЗ. Полный набор мер приказа №239, обязательное непрерывное взаимодействие с ГосСОПКА. Пентест с жёсткими ограничениями: никаких деструктивных воздействий, никакого фаззинга протоколов на production-оборудовании.
ЗОКИИ 3-й категории - базовый набор мер, но обязанность обеспечить безопасность остаётся на субъекте. Пентест может быть шире по объёму допустимых проверок.
Незначимые объекты - требования 187-ФЗ к ним минимальны (взаимодействие с ГосСОПКА по инцидентам), но именно здесь чаще всего обнаруживаются прямые маршруты в OT-сегмент. Субъекты КИИ не вкладывались в защиту, потому что «категория не присвоена». По факту - открытая дверь.
С 1 сентября 2025 года вступили в силу изменения 187-ФЗ: Правительство РФ теперь устанавливает перечни типовых отраслевых объектов КИИ и отраслевые особенности категорирования. Ранее категорированные объекты могут потребовать пересмотра - и повторной оценки защищённости КИИ.
[Применимо: внутренний пентест, grey box - пентестер получает от заказчика результаты категорирования и перечень ЗОКИИ до начала работ]
Decision tree для ИБ-инженера: берёшь у заказчика акт категорирования -> определяешь категорию ЗОКИИ -> открываешь приказ ФСТЭК №239 -> выписываешь меры, которые нужно проверить технически -> формируешь scope с учётом ограничений по воздействию на технологический процесс.
Разведка промышленных сегментов: отличия OT от IT
Пассивная разведка через Shodan и OSINT
Первый этап - понять, что торчит наружу. Промышленные протоколы имеют характерные порты: Modbus TCP - 502, BACnet - 47808, DNP3 - 20000, EtherNet/IP - 44818, OPC-UA - 4840. В Shodan запросport:502 country:RU возвращает устройства с открытым Modbus - их количество удивит даже бывалого ИБ-аудитора критической инфраструктуры.По MITRE ATT&CK это подготовка к Network Service Discovery (T1046, Discovery). Пассивная разведка через Shodan не генерирует трафик к цели и не нарушает границы scope.
Что искать помимо открытых портов:
- SSL-сертификаты SCADA-серверов через Censys или crt.sh - организация, hostname, версия ПО в CN
- Утечки конфигураций в публичных репозиториях: GitHub dorks типа
filename:plc_config,filename:*.pcap modbus - Вакансии компании на hh.ru - часто содержат конкретные модели ПЛК и SCADA-систем, что даёт fingerprinting ещё до первого пакета (мой любимый приём - бесплатная разведка, от которой не спрячешься)
Активное сканирование ICS: почему стандартный nmap убивает контроллеры
Главное правило пентеста КИИ с АСУ ТП: агрессивное сканирование может физически повредить оборудование. ПЛК Siemens S7-300/400 при получении некорректных пакетов на порт 102 способен перейти в STOP-режим. Контроллеры Schneider Modicon M340 при SYN-флуде на порт 502 теряют связь с HMI. Это не теория - на одном из проектовnmap -sS -T4 -p- останавливал подачу теплоносителя на подстанции. Представьте объяснение с заказчиком.Требования к окружению: Kali Linux или GNU/Linux дистрибутив с nmap 7.80+ (поддержка NSE-скриптов для ICS), сетевой доступ к OT-сегменту через VPN или согласованную точку подключения, RAM от 4 ГБ. Сканирование выполняется строго из выделенного IP, согласованного с заказчиком.
Безопасный подход к сканированию:
Bash:
# Осторожное сканирование ICS-сегмента - rate limiting обязателен
nmap -sS --min-rate 100 --max-rate 300 \
-p 102,502,4840,20000,44818,47808 \
--script modbus-discover,s7-info \
--script-timeout 30s \
192.168.100.0/24 -oA ics_scan
--max-rate 300 ограничивает скорость, чтобы не перегрузить ПЛК. Сканируются только порты промышленных протоколов, а не весь диапазон 1–65535. NSE-скрипт modbus-discover отправляет стандартный запрос идентификации Modbus-устройства (FC 17 Report Slave ID или FC 43 MEI) - безопасная операция чтения. Скрипт s7-info идентифицирует Siemens S7-серию через протокол S7comm (COTP + Read SZL). На legacy CPU S7-300 с прошивками V2.x наблюдались побочные эффекты - разрыв активной сессии инженерной станции; на production запускать только в окне обслуживания. Версионное сканирование (-sV) здесь намеренно не используется: его probe-пакеты способны спровоцировать аварийное поведение legacy-контроллеров.[Ограничение:
modbus-discover работает только с устройствами, реализующими расширенную идентификацию. Старые ПЛК с поддержкой только базовых FC1–FC6 не ответят - для них потребуется ручная отправка FC1 (Read Coils) через mbtget или аналогичную утилиту]Kill chain на значимом объекте КИИ
В IT-пентесте kill chain обычно заканчивается на domain admin. В OT-пентесте вопрос другой: может ли атакующий повлиять на физический процесс? Вот полная цепочка на объекте критической информационной инфраструктуры с привязкой к MITRE ATT&CK.1. Initial Access - Exploit Public-Facing Application (T1190)
Типичная точка входа - web-интерфейс SCADA-системы или HMI, опубликованный в корпоративную сеть, а иногда - прямо в интернет. На одном из проектов нашёл web-панель Wonderware InTouch с дефолтными учётными данными, доступную через reverse proxy в DMZ. SQL-инъекции в формах аутентификации SCADA-серверов - не экзотика: многие из них построены на legacy-коде десятилетней давности. Если web-интерфейс найден, стандартный инструментарий (sqlmap с
--tamper для обхода WAF, ручной анализ через Burp Suite) применим так же, как в IT.2. Valid Accounts (T1078, Initial Access / Persistence / Privilege Escalation / Defense Evasion)
Дефолтные и общие учётные данные - бич промышленных систем. Пароли
admin:admin на HMI-станциях, OPERATOR:OPERATOR на инженерных станциях, общие учётки на Windows-машинах АСУ ТП, которые не менялись годами. Причина проста: на production-оборудовании боятся менять пароли, чтобы «ничего не сломать». Проверка дефолтных кредов - первый шаг после получения доступа в OT-сегмент.3. Network Service Discovery (T1046, Discovery)
Инвентаризация OT-сегмента. В IT вы ищете SMB, RDP, WinRM. В OT - порты 502 (Modbus), 102 (S7comm), 4840 (OPC-UA), 47808 (BACnet). Команда
nmap --script modbus-discover на этом этапе даёт карту всех ПЛК в сегменте с моделями и версиями прошивок.4. Lateral Movement - Exploitation of Remote Services (T1210)
Lateral movement в OT-среде часто не требует эксплуатации уязвимостей в привычном смысле. Modbus TCP - протокол без аутентификации. Если атакующий получил сетевой доступ к сегменту с ПЛК, он может отправлять команды напрямую: FC5 (Write Single Coil), FC6 (Write Single Register), FC15 (Write Multiple Coils), FC16 (Write Multiple Registers). Никакого пароля, никакого токена, никакого challenge-response. Протокол разрабатывался в 1979 году для последовательных линий связи - аутентификация в нём не предусмотрена архитектурно. Вдумайтесь: 1979 год, а мы в 2026-м до сих пор на нём сидим.
5. Credential Access - OS Credential Dumping: LSASS Memory (T1003.001)
Инженерные станции и HMI часто работают на Windows 7/10 без EDR. Дамп учётных данных стандартными инструментами (Mimikatz, pypykatz, comsvcs.dll MiniDump - T1003.001 LSASS Memory) - штатная операция. На одном из проектов с инженерной станции Schneider Unity Pro извлёк хеш доменного администратора, который использовался для удалённого подключения к серверу SCADA. Классический pass-the-hash - и ты уже на SCADA-сервере.
6. Defense Evasion - Disable or Modify Tools (T1685)
Если на объекте развёрнут Industrial IDS (PT ISIM, Kaspersky KICS for Networks), любое нестандартное обращение к ПЛК будет зафиксировано. Evasion в OT-среде - это прежде всего мимикрия под легитимный трафик: те же function codes, с той же частотой, с тех же IP-адресов, что и штатное ПО SCADA. Отключение логирования на Windows-станциях АСУ ТП (через
wevtutil cl или остановку службы Windows Event Log) - техника, применимая на этапе пост-эксплуатации. На практике многие объекты КИИ не имеют централизованного сбора логов с OT-станций - отсутствие SIEM в промышленном сегменте делает evasion тривиальным. Некого обманывать, если никто не смотрит.7. Impact - Data Destruction (T1485) / Data Manipulation (T1565)
Конечная цель пентеста КИИ - не exfiltration данных, а демонстрация возможности воздействия на технологический процесс. Изменение уставок регулятора (FC16 на нужные регистры Modbus), останов ПЛК, манипуляция показаниями датчиков. Именно это демонстрировали атаки TRITON (2017, Schneider Triconex - манипуляция системой противоаварийной защиты нефтехимического предприятия) и Industroyer (2016, энергосистема Украины - автоматическое отключение подстанций через OT-протоколы). В рамках пентеста этот шаг выполняется только на тестовом стенде или документируется как теоретическая возможность при согласии заказчика - реальная запись в регистры production-контроллера запрещена.
[Применимо: внутренний пентест, grey box. На внешнем пентесте kill chain обычно останавливается на шагах 1–2. В grey box сценарии пентестер получает от заказчика доступ в корпоративный сегмент или учётные данные low-priv и начинает с шага 3]
Чем OT-пентест отличается от IT на уровне защитных мер
Промышленная кибербезопасность - это не IT-безопасность с другими портами. Различия фундаментальны, и если их не понимать, можно наломать дров (в буквальном смысле - уронить техпроцесс).
Протоколы без аутентификации. Modbus, DNP3 (в базовом варианте), BACnet/IP - все проектировались для изолированных сетей и не содержат механизмов аутентификации. FC1 (Read Coils) и FC3 (Read Holding Registers) - операции чтения, которые большинство ПЛК выполнит от любого хоста в сегменте. FC5/FC6/FC15/FC16 - операции записи, способные изменить состояние физического процесса. DNP3 Secure Authentication существует как расширение, но на практике встречается редко - я за три года видел его ровно один раз.
EDR и антивирусы не работают. Инженерные станции на Windows часто лишены антивируса: установка агента EDR (CrowdStrike Falcon, Kaspersky EDR Expert, PT EDR) на HMI-станцию рискует конфликтом с real-time процессами SCADA. Контроллеры - embedded-устройства с проприетарными ОС, endpoint-защиту не поддерживают в принципе. Dallas Lock или аналогичные СЗИ от НСД из реестра ФСТЭК встречаются на Windows-станциях АСУ ТП, но закрывают только контроль доступа, а не детекцию TTP.
Legacy-оборудование. Windows XP и Windows 7 на HMI-станциях - повседневная реальность, а не исключение. Обновление ОС требует перевалидации SCADA-системы, что стоит сотни тысяч рублей и месяцы работы. ПЛК с прошивками 10–15-летней давности не получают патчей безопасности. Вендор давно забыл про эту модель, а она управляет подачей теплоносителя в жилой район.
Сегментация - единственный реальный барьер. Защита OT-сегмента строится на сетевой изоляции: промышленный МЭ типа Г (по классификации профилей защиты ФСТЭК - InfoWatch ARMA Industrial Firewall, DATAPK ICS, Континент 4 в промышленной конфигурации), МЭ типов А/Б для разделения IT/OT-сегментов (АПКШ «Континент», ViPNet Coordinator, UserGate), однонаправленные шлюзы (data diodes), выделенные DMZ между IT и OT. Если сегментация нарушена - а она нарушена на каждом из проверенных мной объектов - все остальные меры теряют смысл.
Baseline-мониторинг вместо сигнатур. Для OT-сегментов применяется не сигнатурный анализ, а baseline anomaly detection. Решения класса Industrial IDS (PT ISIM, Dragos, Nozomi Networks, Kaspersky KICS for Networks) строят модель нормального поведения и фиксируют отклонения: запись в нехарактерные регистры, незнакомые FC, новые MAC-адреса. Если такое решение развёрнуто - пентестер будет обнаружен при первой попытке active recon. Если не развёрнуто - атакующий невидим. Третьего не дано.
Юридические границы: ст. 274.1 УК РФ и подключение к ГосСОПКА
Пентест объекта КИИ без надлежащего оформления - прямой путь под статью 274.1 УК РФ: неправомерное воздействие на критическую информационную инфраструктуру, санкции - от штрафа до 10 лет лишения свободы в зависимости от квалификации (ч. 1–5 ст. 274.1 УК РФ); максимум - за деяния, повлекшие тяжкие последствия. Разница между пентестером и злоумышленником - в документах. Только в документах.Что оформить до начала работ:
- Договор с явным описанием объектов проверки, допустимых методов воздействия и временных окон
- Письменное разрешение руководителя организации - субъекта КИИ (именно руководителя, не начальника IT-отдела - это принципиально)
- Согласованный перечень IP-адресов, подсетей и систем в скоупе
- Регламент уведомления о критических находках (0-day, активное заражение)
- Регламент действий при непреднамеренном воздействии на техпроцесс
Рекомендация: до начала работ уведомить SOC заказчика о точных датах, IP-адресах и характере воздействий. Получить письменное подтверждение, что SOC не инициирует уведомление ГосСОПКА по действиям из согласованного перечня.
Чеклист оценки защищённости значимого объекта КИИ
Нумерованный список - можно передать инженеру АСУ ТП или включить в отчёт по оценке защищённости КИИ:
📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме
За три года оценки защищённости объектов КИИ я пришёл к выводу, который не понравится ни комплаенс-менеджерам, ни вендорам: основная проблема безопасности критической информационной инфраструктуры - не в недостатке средств защиты, а в нарушенной сегментации между IT и OT. На каждом из проверенных мной объектов обнаруживался либо прямой маршрут из корпоративной сети в промышленный сегмент, либо «временный» (а по факту - постоянный) RDP-тоннель для удалённого обслуживания ПЛК. При этом большинство формально прошли категорирование объектов КИИ и сдали акты в ФСТЭК. Бумажка есть, защиты нет.
Импортозамещение КИИ, которое 187-ФЗ регулирует всё жёстче с 2025 года, добавляет отдельный слой сложности. Отечественные МЭ (UserGate, ViPNet) и SIEM (MaxPatrol SIEM, KUMA, RuSIEM) в IT-сегменте работают адекватно, но в OT-среде с протоколами Modbus и DNP3 часто слепы - нет разбора промышленных протоколов на уровне function codes. Между тем именно на этом уровне происходит реальная атака: не на порты, а на регистры.
С появлением отраслевых перечней типовых объектов КИИ количество значимых объектов резко вырастет. Организации, которые раньше получали «отсутствие значимости», окажутся в периметре приказа ФСТЭК №239 - и обнаружат, что их OT-сегмент открыт настежь. Кто уже умеет проводить пентест промышленных систем с пониманием ограничений протоколов и техпроцесса - у того будет работа. Кто нет - будет учиться на чужих инцидентах, которые перестали быть гипотетическими после TRITON и Industroyer. На курсе WAPT эту связку IT->OT разбирают на лабах с реальными Modbus-устройствами - если хотите потренироваться, не рискуя чужим теплоснабжением.
Последнее редактирование модератором: