Исследователи из Nozomi Networks Labs опубликовали важный отчет, в котором описали три новые уязвимости в среде выполнения CODESYS Control runtime. При объединении этих ошибок аутентифицированный злоумышленник с минимальными привилегиями может заменить легитимное промышленное приложение на версию с вредоносной закладкой. В итоге такая атака приводит к полному административному контролю над целевым устройством и его операционной системой. Это открытие подчеркивает растущие риски в сетях операционных технологий и абсолютную необходимость надежного управления учетными данными.
Детали уязвимостей
CODESYS представляет собой независимую от производителя среду разработки, которая широко применяется в промышленной автоматизации. По сути, это программное обеспечение превращает обычное вычислительное оборудование в Soft PLC (программный программируемый логический контроллер). Такой подход дает те же инженерные возможности, что и специализированные промышленные модули, но при значительно меньшей стоимости. Экосистема включает два основных компонента: IDE (интегрированная среда разработки) на базе Windows для написания и компиляции кода, а также среду выполнения CODESYS Control Runtime, которая исполняет этот код на целевом оборудовании. Эти программные контроллеры управляют критически важными физическими процессами в самых разных средах - от энергетических систем до производственных линий, регулируя все - от положения клапанов до последовательности действий роботов.
Специалисты Nozomi Networks обнаружили три конкретные уязвимости. Компания CODESYS Group уже выпустила для них исправления. Первая уязвимость (CVE-2025-41658, степень риска по шкале CVSS - 5,5) связана с некорректными разрешениями по умолчанию. Она позволяет локальным пользователям получать доступ к конфиденциальным файлам, что дает возможность извлекать хеши паролей в автономном режиме. Вторая уязвимость (CVE-2025-41659, степень риска 8,3) имеет высокий уровень серьезности: из-за неправильного назначения прав доступа злоумышленник получает несанкционированный доступ к ключевым криптографическим материалам на устройстве. Третья уязвимость (CVE-2025-41660, степень риска 8,8) является критической: ошибка при передаче ресурсов позволяет атакующему беспрепятственно загружать и восстанавливать поддельные проектные файлы.
Цепочка атак начинается с того, что злоумышленник сначала должен получить учетные данные уровня Service. Он может их добыть, используя слабые пароли по умолчанию, взламывая рабочую станцию инженера или применяя первую уязвимость для кражи локальных хешей паролей. После аутентификации атакующий злоупотребляет стандартным процессом резервного копирования проектов. Он загружает загрузочное приложение устройства в виде резервной копии - файла, который представляет собой обычный ZIP-архив с бинарным кодом приложения и базовой контрольной суммой CRC32 (циклический избыточный код, не обладающий криптографической стойкостью). Используя вторую уязвимость, злоумышленник извлекает криптографические ключи устройства, чтобы обойти дополнительные средства защиты, такие как шифрование кода и его подпись.
Затем он внедряет вредоносный машинный код (например, обратный root-шелл) в бинарный файл и без труда пересчитывает контрольную сумму CRC32, чтобы файл выглядел легитимным. После этого, эксплуатируя третью уязвимость, злоумышленник восстанавливает измененную резервную копию на контроллере. Поскольку пользователи уровня Service не могут напрямую перезапускать приложения, атакующему приходится ждать плановой перезагрузки или перезапуска, инициированного оператором. Когда Soft PLC перезагружается, внедренная вредоносная закладка запускается с привилегиями root (суперпользователя), что позволяет злоумышленнику поднять свои права до полного администратора.
Согласно фреймворку MITRE ATT&CK для промышленных систем управления (ICS), такая цепочка уязвимостей представляет серьезную угрозу для промышленных операций. Атакующие могут заменить прошивку модулей, извлечь конфиденциальные схемы управления и напрямую манипулировать физическими элементами управления. Скомпрометированное приложение способно искажать показания датчиков, обходить блокировки безопасности и запускать небезопасное поведение оборудования, что может привести к катастрофическому физическому ущербу.
После ответственного раскрытия информации компания CODESYS оперативно выпустила исправления в версии CODESYS Control Runtime 4.21.0.0 и Runtime Toolkit 3.5.22.0. Чтобы окончательно устранить первопричину, поставщик теперь сделал обязательным по умолчанию подпись кода для всех программ контроллера перед их развертыванием или исполнением. Промышленным операторам настоятельно рекомендуется как можно скорее установить эти обновления, обеспечить строгую сегментацию сети и отслеживать трафик операционных технологий на предмет любых признаков уязвимых активов.
Ссылки
- https://www.cve.org/CVERecord?id=CVE-2025-41658
- https://www.cve.org/CVERecord?id=CVE-2025-41659
- https://www.cve.org/CVERecord?id=CVE-2025-41660
- https://certvde.com/de/advisories/VDE-2026-011
- https://certvde.com/de/advisories/VDE-2025-051
- https://certvde.com/de/advisories/VDE-2025-049
- https://www.nozominetworks.com/blog/backdooring-codesys-applications-via-vulnerability-chaining