Промышленный контроллер ПЛК на тёмном антистатическом коврике с красным светодиодом тревоги. Янтарный дисплей отображает код уязвимости, перебитый шлейф уходит в тень.


Дисклеймер: это сценарное моделирование (tabletop exercise), построенное на реальных TTP иранских APT-группировок и прогнозировании кампаний 2023–2024 годов (CISA AA23-335A, отчёты по IOControl). Advisory AA26-097A, военные действия и события 2026 года - гипотетические, используются для демонстрации методов detection engineering.

Представьте: 7 апреля 2026 года шесть федеральных агентств США - FBI, CISA, NSA, EPA, DOE и US Cyber Command - выпускают совместный advisory AA26-097A. Суть: иранские APT-группировки активно ломают интернет-доступные ПЛК по всей территории Штатов. Жертвы фиксируют операционные сбои и финансовые потери. Шесть агентств одновременно - это не учебная тревога.

Для тех, кто работает в ICS security, такой сценарий - не абстрактное упражнение на бумаге. Он иллюстрирует вероятный переход иранских актёров от pre-positioning к реальному воздействию на физические процессы. Тренд уже виден в кампаниях 2023–2024. Я разберу полную цепочку TTP кампании, разложу её по MITRE ATT&CK for ICS и - что полностью отсутствует в русскоязычном пространстве - дам конкретные Sigma-правила, Splunk-запросы и рекомендации по detection engineering для обнаружения этой активности в вашей OT-среде.

От Unitronics к Rockwell: эволюция иранских атак на промышленные системы​

Чтобы оценить масштаб угрозы, нужно понять, как иранские ICS-операции эволюционировали. Три этапа эскалации - каждый следующий на порядок серьёзнее предыдущего.

Ноябрь 2023 - кампания против Unitronics. Группировка CyberAv3ngers (она же Shahid Kaveh Group, Hydro Kitten, Storm-0784, UNC5691), связанная с кибер командованием КСИР, скомпрометировала не менее 75 ПЛК Unitronics с HMI по всей территории США. Вектор атаки был, прямо скажем, примитивен - дефолтные пароли на устройствах, торчащих в интернет. Среди подтверждённых жертв - водоочистная станция Municipal Water Authority в Аликиппе, Пенсильвания. В феврале 2024 года США ввели санкции против шести офицеров КСИР.

2024 - развёртывание IOControl. По данным CISA, та же группа развернула кастомную вредоносную программу IOControl для удалённого управления системами водоснабжения и топливного менеджмента в США и Израиле. Программа Rewards for Justice предложила до 10 миллионов долларов за информацию о группе. Десять миллионов - это уже не про хактивизм.

Март 2026 - текущая кампания (AA26-097A). В рамках сценария: после гипотетической эскалации конфликта между США, Израилем и Ираном акторы, связанные с КСИР, переходят к атакам на качественно иной класс оборудования. Как отмечает Picus Security, эскалация идёт по трём направлениям.

Первое - расширение вендоров. Вместо единственного Unitronics с дефолтными паролями - Rockwell Automation CompactLogix и Micro850, причём с использованием легитимного инженерного ПО. Порты 102 и 502 в списке целевых говорят о том, что атакующие как минимум сканируют Siemens S7 и Modbus-совместимые устройства (хотя подтверждённые сессии в advisory касаются только Rockwell).

Второе - усложнение техник. Атакующие используют Studio 5000 Logix Designer - ту самую среду разработки, которой пользуются OT-инженеры каждый день. Развёртывание Dropbear SSH на конечных точках жертв указывает на стратегию долгосрочного присутствия, а не разовых диверсий.

Третье - подтверждённый операционный ущерб. В отличие от кампании 2023 года, advisory AA26-097A прямо подтверждает: жертвы понесли операционные сбои и финансовые потери от манипуляции ПЛК. Это уже не defacement экрана HMI с политическим лозунгом.

По данным Dragos (в реальных отчётах Year in Review за 2023–2024 уже отслеживается группа BAUXITE), группа BAUXITE, имеющая технические пересечения с CyberAv3ngers, классифицируется как Stage 2 adversary по ICS Cyber Kill Chain - способна компрометировать ПЛК и разворачивать кастомные бэкдоры на OT-устройствах. В рамках сценария также моделируется появление новой группы PYROXENE, предположительно поддерживаемой КСИР и специализирующейся на OT/ICS-средах.

: техники атак иранских APT-группировок​

Разложим кампанию AA26-097A по ATT&CK for ICS. Здесь и далее - техники из матрицы MITRE ATT&CK for ICS (префикс T0xxx), а не Enterprise (Txxxx). Полный каталог: . Это принципиально для построения detection-стратегии - каждая техника определяет точку, где можно поймать атакующего.

Initial Access: интернет-доступные ПЛК и эксплуатация

Согласно advisory, спецы сканировали интернет на предмет открытых ПЛК Rockwell Automation (T0883 - Internet Accessible Device по ), подключаясь с зарубежных IP через арендованную хостинг-инфраструктуру. Они использовали Studio 5000 Logix Designer для установления легитимного протокольного соединения с контроллерами CompactLogix и Micro850 (T0886 - Remote Services по ).

Тут важно понимать: эксплуатируется не столько программная уязвимость, сколько архитектурная. ПЛК развёрнуты без сетевой сегментации, аутентификационных гейтов и hardenинга. Но есть и конкретная CVE, непосредственно связанная с кампанией, эксплуатируемая через T0819 (Exploit Public-Facing Application, ).

CVE-2021-22681 - реальная уязвимость из . В рамках сценария предполагается её активная эксплуатация иранскими APT. По данным NVD:
  • CVSS Score: 9.8 (CRITICAL)
  • Вектор: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • CWE-522: Insufficiently Protected Credentials
Разберём CVSS-вектор по буквам: AV:N - сетевой доступ, AC:L - низкая сложность, PR:N - привилегии не нужны, UI:N - действий пользователя не требуется. Максимально опасная комбинация: удалённая эксплуатация без аутентификации и без какого-либо взаимодействия. Проще говоря - пришёл, увидел, получил доступ.

Уязвимость затрагивает Rockwell Automation Studio 5000 Logix Designer версий 21 и выше, RSLogix 5000 версий 16–20, а также контроллеры CompactLogix 1768, 1769, 5370, 5380, 5480; ControlLogix 5550, 5560, 5570, 5580; DriveLogix 5560, 5730, 1794-L34; Compact GuardLogix 5370, 5380; GuardLogix 5570, 5580 и SoftLogix 5800. Суть - недостаточно защищённый криптографический ключ для верификации связи между Studio 5000 и контроллерами Logix.

Advisory AA26-097A прямо ссылается на эту CVE и руководство Rockwell PN1550 как релевантные текущей кампании.

Command and Control через промышленные протоколы и Dropbear SSH​

Вредоносный трафик шёл на пять портов, каждый из которых привязан к конкретному промышленному протоколу или служебному каналу:

ПортПротоколНазначениеВендор
44818EtherNet/IP (CIP)Конфигурация и управление ПЛКRockwell Automation
2222OT configurationКонфигурирование промышленных устройствРазличные
102ISO-TSAP (S7comm)Связь с ПЛК Siemens S7Siemens
502Modbus TCPУниверсальный промышленный протоколМультивендор
22SSH (Dropbear)Удалённый доступOpen-source

Порты 102 и 502 в списке - прямое указание: атакующие не ограничиваются Rockwell. Siemens S7 и любые Modbus-совместимые контроллеры тоже в зоне риска.

Отдельная история - Dropbear SSH. Это легковесная open-source реализация SSH, заточенная под embedded-системы и устройства с ограниченными ресурсами. Для промышленной сети - идеальный механизм сохранения данных: Dropbear жрёт минимум ресурсов, переживает перезагрузку ПЛК и при этом даёт полноценный удалённый шелл. Лично я считаю это одним из самых элегантных ходов в кампании - зачем тащить кастомный бэкдор, когда есть готовый SSH-демон на 100 КБ? Использование соответствует технике Remote Services (T0886) по ATT&CK for ICS.

Impact: манипуляция данными SCADA и HMI​

Advisory подтверждает два вектора воздействия: T0821 (Modify Controller Tasking, ATT&CK for ICS) для манипуляции логикой ПЛК и T0856 (Spoof Reporting Message, ) для фальсификации данных HMI.

Извлечение проектных файлов (T0882 - Theft of Operational Information, ). Атакующие экспортировали .ACD-файлы - проектные файлы Studio 5000 с ladder logic, управляющими последовательностями и параметрами конфигурации. Для OT-инженера это означает: у противника теперь полная карта ваших промышленных процессов. Он знает, какие переменные отвечают за какие физические операции, какие пороговые значения стоят в аларм-системе и где расположены точки отказа. По сути - чертежи вашего завода.

Фальсификация данных на HMI/SCADA. Отображаемые значения на операторских панелях были подменены. Это самый опасный вектор: оператор смотрит на HMI, видит нормальные параметры, а реальный процесс уже выходит из-под контроля. Именно этот принцип был заложен в Stuxnet - оператор видит штатные обороты центрифуги, пока она физически разрушается.

Как отмечает Picus Security, извлечённые сегодня проектные файлы могут стать основой для более деструктивных операций завтра. Комбинация разведки и операционного воздействия зеркалит паттерн группы Agrius, которая проводит эксфильтрацию данных перед развёртыванием деструктивных пейлоадов.

Detection Engineering для OT-сред: Sigma-правила и ICS-мониторинг​

Это ключевая секция статьи. Ни один русскоязычный источник не покрывает эту тему с конкретными detection-сценариями для каждого этапа kill chain. Разберём по порядку.

Обнаружение аномалий Modbus, EtherNet/IP и S7 на сетевом уровне​

Первый рубеж обороны - мониторинг сетевого трафика на промышленных портах. Sigma-правило ниже ловит внешние подключения к OT-портам из advisory AA26-097A:
YAML:
# Sigma rule: обнаружение внешних подключений к OT-портам (AA26-097A)
title: External Connection to Industrial Protocol Ports (CISA AA26-097A)
id: a1b2c3d4-5678-9abc-def0-123456789abc
status: experimental
description: >
  Detects inbound connections from external IPs to OT protocol ports
  associated with Iranian APT campaign targeting PLCs (CISA AA26-097A)
references:
  - https://www.cisa.gov/news-events/cybersecurity-advisories/aa26-097a
author: OT Security Detection Engineering
date: 2026/04/10
tags:
  - attack.initial_access   # ATT&CK for ICS
  - attack.command_and_control  # ATT&CK for ICS
logsource:
  category: firewall
  product: any
detection:
  selection_ports:
    dst_port:
      - 44818  # EtherNet/IP (CIP)
      - 502    # Modbus TCP
      - 102    # S7comm (ISO-TSAP)
      - 2222   # OT configuration
  filter_internal:
    src_ip|cidr:
      - '10.0.0.0/8'
      - '172.16.0.0/12'
      - '192.168.0.0/16'
      - '100.64.0.0/10'   # RFC 6598 CGNAT
      # Адаптируйте под вашу адресную схему OT-сети.
      # IPv6 требует отдельного правила.
  condition: selection_ports and not filter_internal
falsepositives:
  - Legitimate remote vendor support from external IPs
  - Cloud-based SCADA services
level: high
В правильно сегментированной OT-среде внешних подключений к этим портам быть не должно - каждое срабатывание требует немедленного расследования. Подставьте в filter_internal ваши диапазоны OT-подсети.

Второе Sigma-правило - аномальные Modbus write-команды, когда кто-то извне пытается записать значения в регистры ПЛК:
YAML:
# Sigma rule: аномальные Modbus write-операции
title: Suspicious Modbus Write Commands from Non-Engineering Workstation
id: b2c3d4e5-6789-abcd-ef01-234567890abc
status: experimental
description: >
  Detects Modbus write function codes (FC 5, 6, 15, 16) originating
  from hosts not in the engineering workstation allowlist
# ВНИМАНИЕ: pseudo-Sigma правило, требует кастомного field mapping
# для pySigma (Zeek modbus.log → Sigma). Стандартные бэкенды НЕ транслируют
# без маппинга. Для прямого использования - Zeek-команда:
#   cat modbus.log | zeek-cut ts id.orig_h id.resp_h func | \
#     grep -E '(WRITE_SINGLE_COIL|WRITE_SINGLE_REGISTER|WRITE_MULTIPLE_COILS|WRITE_MULTIPLE_REGISTERS)'
# Или Splunk-запрос: index=zeek sourcetype=modbus func IN ("WRITE_SINGLE_COIL",
#   "WRITE_SINGLE_REGISTER","WRITE_MULTIPLE_COILS","WRITE_MULTIPLE_REGISTERS")
#   | where NOT cidrmatch("10.10.50.0/24", id.orig_h)
logsource:
  category: custom
  product: zeek
  # Требует кастомного field mapping: Zeek modbus.log поле 'func' → modbus_function.
  # Без маппинга используйте Zeek-команду или Splunk-запрос выше.
detection:
  selection:
    dst_port: 502
    modbus_function:
      - 5   # Write Single Coil
      - 6   # Write Single Register
      - 15  # Write Multiple Coils
      - 16  # Write Multiple Registers
  filter_allowed:
    src_ip:
      - '10.10.50.10'  # Пример: engineering workstation 1
      - '10.10.50.11'  # Пример: engineering workstation 2
  condition: selection and not filter_allowed
level: critical
Идея простая: в промышленной сети write-команды должны отправлять только авторизованные инженерные станции. Любой другой источник - аномалия. Без вариантов.

Детектирование Dropbear SSH в промышленной сети​

Dropbear оставляет характерный fingerprint, отличный от OpenSSH. Если в вашей OT-сети нет легитимных Dropbear-установок (а в подавляющем большинстве промышленных сред их нет), само появление баннера SSH-2.0-dropbear - индикатор компрометации.
YAML:
# Sigma rule: обнаружение Dropbear SSH в OT-сегменте
title: Dropbear SSH Server Detected in OT Network Segment
id: c3d4e5f6-789a-bcde-f012-345678901abc
status: experimental
description: >
  Detects Dropbear SSH banner in network traffic within OT segments.
  Dropbear was deployed by Iranian APT actors for persistent access
  to compromised PLC endpoints per CISA AA26-097A.
logsource:
  # Требует кастомного field mapping: Zeek ssh.log поле 'server' → server_banner.
  # Стандартные Sigma-бэкенды не поддерживают без маппинга.
  # Без маппинга используйте Zeek-скрипт ниже.
  category: network_connection
  product: zeek
detection:
  selection:
    dst_port: 22
    server_banner|contains: 'dropbear'  # В Zeek ssh.log это поле 'server' (например 'SSH-2.0-dropbear_2022.83')
  condition: selection
falsepositives:
  - Embedded Linux devices with legitimate Dropbear installation
level: critical
Для тех, кто использует Zeek в качестве сенсора промышленного трафика - дополнительный скрипт для логирования SSH-баннеров:
Код:
# Zeek: логирование SSH server banners в OT-сегменте
# Ловит Dropbear SSH на скомпрометированных устройствах

# Определяем кастомный notice type - БЕЗ этой строки скрипт не скомпилируется.
# Добавьте в начало скрипта или в отдельный модуль.
redef enum Notice::Type += { SSH::Dropbear_Detected };

event ssh_server_version(c: connection, version: string)
{
    local ot_subnets: set[subnet] = {
        10.10.0.0/16,    # Замените на ваши OT-подсети
        172.16.100.0/24
    };

    if (c$id$resp_h in ot_subnets)
    {
        if (/dropbear/ in version)
        {
            NOTICE([$note=SSH::Dropbear_Detected,
                     $msg=fmt("Dropbear SSH detected in OT segment: %s -> %s (%s)",
                              c$id$orig_h, c$id$resp_h, version),
                     $conn=c,
                     $identifier=cat(c$id$resp_h)]);
        }
    }
}

Threat Hunting в OT-сетях: запросы для SIEM​

🔓 Эксклюзивный контент для зарегистрированных пользователей.

Защита критической инфраструктуры от кибератак: пошаговый план​

На основе рекомендаций из advisory AA26-097A и практики работы с OT-средами - план действий по приоритету.

Первые 24 часа - делай или пожалеешь:
  1. Уберите ПЛК из прямого интернет-доступа. Просканируйте внешний периметр на открытые порты 502, 44818, 102, 2222 и 20000 (DNP3). Нашли ПЛК - немедленно за файрвол или сетевой прокси. Без разговоров.
  2. Переведите физические переключатели режима на контроллерах Rockwell в позицию RUN. Это аппаратно блокирует удалённое изменение проектных файлов. Программные ключи настройте через руководство Rockwell SD1771.
  3. Проверьте логи файрволов и IDS за период с марта 2026 года на трафик к портам 44818, 2222, 102, 22 и 502 от зарубежных хостинг-провайдеров. Загрузите IoC из advisory AA26-097A (доступны в XML и JSON) и прогоните по своим логам.
На этой неделе - hardening:
  1. Внедрите MFA на всех точках удалённого доступа к OT-сети. Даже если ПЛК нативно не поддерживает многофакторку, VPN и jump-хосты перед ними должны её обеспечивать.
  2. Обновите firmware на ПЛК до последних версий. Отключите неиспользуемые сервисы. Убейте все дефолтные пароли и учётные записи. Да, включая те, про которые «все знают, но никто не трогает».
  3. Сделайте офлайн-бэкапы всей логики и конфигурации ПЛК. Храните на защищённых физических носителях. Регулярно тестируйте процедуры восстановления - это ваш последний рубеж при манипуляции проектными файлами.
На постоянной основе:
  1. Разверните мониторинг промышленного трафика. Нет специализированных OT-решений вроде Dragos Platform или Claroty - начните хотя бы с Zeek-сенсора на зеркальном порту коммутатора OT-сегмента. Примените Sigma-правила из этой статьи. Лучше Zeek на зеркале, чем вообще ничего.
  2. Поддерживайте asset inventory OT-устройств. Нельзя защитить то, о чём не знаешь. Регулярно сканируйте внутреннюю сеть на предмет новых устройств и изменений конфигурации.

Почему стандартные средства защиты слепы в SCADA-сетях​

Главная проблема этой кампании - не изощрённость техник атакующих, а слепота защитников. Атакующие использовали легитимное инженерное ПО Studio 5000 Logix Designer для подключения к ПЛК. С точки зрения сетевого трафика это выглядит идентично штатной работе OT-инженера. Попробуйте отличить.

Стандартный EDR в OT-среде практически бесполезен. ПЛК не поддерживают установку агентов - это не Windows-машина, куда можно накатить CrowdStrike. Многие HMI и SCADA-серверы живут на устаревших ОС, несовместимых с современными EDR. Промышленные протоколы (EtherNet/IP, Modbus, S7comm) стандартные сетевые IDS попросту не разбирают.

Поэтому detection engineering для OT требует принципиально другого подхода - мониторинга сетевого трафика на уровне промышленных протоколов. Не «был ли запущен подозрительный процесс», а «кто отправил Modbus write-команду на ПЛК в 3 часа ночи». Не «обнаружен подозрительный хеш», а «инженерная станция скачала .ACD-файл с контроллера, хотя плановых работ нет».

Один из исследователей точно подметил в ответ на advisory: если ПЛК доступен из интернета, атакующие имеют асимметричное преимущество - они сканируют непрерывно и в масштабе, пока защитники полагаются на внутренний мониторинг, исходя из предположения о правильной изоляции. Это предположение - и есть тот разрыв, через который проходят иранские APT.

Связь с другими иранскими OT-операциями​

Кампания AA26-097A не существует в вакууме. По данным Seqrite, параллельно действует группа Marshtreader (она же Agrius, Pink Sandstorm), связанная с MOIS. В рамках сценария эта группа расширяет сканирование устройств Hikvision в Израиле, ОАЭ, Катаре, Бахрейне, Кувейте, Ливане и Кипре, эксплуатируя две уязвимости.

- Improper Authentication (CWE-287), CVSS 9.8 (CRITICAL), вектор CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Затрагивает серии камер Hikvision DS-2CD2xx2F-I, DS-2CD2xx0F-I, DS-2CD2xx2FWD, DS-2CD4x2xFWD и DS-2CD4xx5. Камеры видеонаблюдения, удалённая эксплуатация через интернет - визуальная разведка в чистом виде.

CVE-2023-6895 - OS Command Injection (CWE-78), CVSS 6.3 (MEDIUM по CVSS v3.1; несмотря на то что оригинальный VDB advisory описывает уязвимость как critical, score 6.3 соответствует уровню MEDIUM), вектор CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L. Затрагивает Hikvision Intercom Broadcasting System 3.0.3_20201113_RELEASE(HIK) и интерком-устройства серий DS-KD (IP-домофоны, не камеры). Вектор AV:A означает эксплуатацию только из смежной сети (Adjacent Network) - атакующие либо уже имеют доступ к локальной сети, либо устройства некорректно сконфигурированы с бриджингом в интернет.

Параллельная активность по компрометации Hikvision вблизи зон конфликта преследует разведывательные цели: камеры (CVE-2017-7921) дают визуальную информацию, интерком-системы (CVE-2023-6895) - точку опоры в локальной сети. Для организаций с устройствами Hikvision, торчащими в интернет, это прямая угроза проникновения в периметр. Скомпрометированное устройство - плацдарм для lateral movement в промышленную сеть.

Иранская киберструктура работает через несколько уровней: государственные APT (КСИР и MOIS), полугосударственные подрядчики, управляемые спецслужбами хактивистские группы и идеологически связанные иностранные объединения. Они обмениваются разведданными и доступом, ускоряя цикл атак. Проектные файлы, извлечённые из ПЛК сегодня, могут быть переданы другой группе для деструктивной операции завтра.

Заключение​

Сценарий, построенный на реальных TTP иранских APT и тренде кампаний 2023–2024, показывает вероятную эволюцию угрозы - от подтверждённых компрометаций Unitronics к атакам на более серьёзное промышленное оборудование с реальным операционным ущербом. Иранские APT перешли от эксплуатации дефолтных паролей к использованию легитимного инженерного софта, и классическими средствами это обнаружить почти невозможно.

Detection engineering для OT-сред - не «хорошо бы когда-нибудь», а вопрос выживания. Sigma-правила для мониторинга промышленных портов, Zeek-сенсоры на зеркальных портах OT-коммутаторов, SIEM-запросы с фильтрацией по геолокации - эти меры закрывают разрыв между словами «у нас всё изолировано» и реальным состоянием промышленной сети.

Три действия с наибольшим эффектом не требуют бюджета: убрать ICS-интерфейсы из интернета, сменить дефолтные пароли и заблокировать промышленные порты на периметре. Прямо сейчас откройте Shodan, вбейте org:"ваша организация" port:502 - и посмотрите, что торчит наружу. Если нашли хоть один ПЛК - у вас та же проблема, что и у жертв из advisory.
 
Последнее редактирование модератором:
  • Нравится
Реакции: JackSparrow
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab