Клиентская библиотека .NET Client Library for SIMATIC S7 Webserver API содержит две уязвимости. Первая позволяет записать произвольные файлы за пределами каталога загрузки, вторая оставляет пароль восстановления программируемого логического контроллера (ПЛК) в тексте сообщений об ошибке. Проблема затрагивает выпуски библиотеки, через которые приложения обмениваются данными с веб-сервером контроллеров SIMATIC S7. Продукт применяют на объектах энергетики, транспорта, здравоохранения, финансового сектора и госсектора по всему миру.
Две уязвимости библиотеки .NET для SIMATIC S7
Siemens подтвердил обе уязвимости в библиотеке и выпустил исправленные версии. По статусу уведомления продукт подтверждённо уязвим: вендор проверил код и признал наличие ошибок. Сведений об эксплуатации в реальных атаках нет. Публикация технических деталей этого не означает: уведомление раскрывает суть проблемы, но не говорит о её использовании. Ошибки нашёл Siemens ProductCERT и передал данные в CISA.
Скачивая служебные файлы (ticket), библиотека не проверяет имена, которые приходят с удалённого сервера. Билет - это ответ сервера, который библиотека сохраняет в каталог загрузки. Если злоумышленник может подменить такой ответ, он добавляет в имя файла переходы в родительские каталоги; такой приём называют обходом каталогов (path traversal). В результате файл записывается вне каталога загрузки, а при включённой перезаписи заменяет и те файлы, к которым у приложения есть доступ. Идентификатор этой уязвимости - CVE-2026-85114.
Атака идёт по сети, учётные данные не нужны, участие пользователя не требуется. Оценка по CVSS (общая система оценки уязвимостей) - 7.5 из 10, уровень High.
Вторая уязвимость связана с паролем восстановления ПЛК. Библиотека не вычищает его из сообщений об ошибке HTTP, поэтому пароль в открытом виде попадает в журналы и другую диагностику. Тот, у кого есть доступ к этим файлам, получает действующий пароль и может выполнить на контроллере операции, на которые прав у него быть не должно. Условия атаки другие: локальный доступ, низкие привилегии, участие пользователя не требуется. Идентификатор - CVE-2026-85115, оценка 5.5 из 10, уровень Medium.
Первое исправление - версия 3.3.61. Вторую уязвимость закрывает версия 3.3.62; для неё вендор указывает два диапазона затронутых выпусков, младше 3.3.61 и младше 3.3.62. Обновление до 3.3.62 снимает обе проблемы, тогда как 3.3.61 закрывает только запись файлов вне каталога загрузки. Отдельных обходных мер под эти уязвимости в уведомлении нет, есть только общие рекомендации по защите сети.
Siemens в общих рекомендациях просит защищать сетевой доступ к устройствам и настраивать среду по своим правилам промышленной безопасности. CISA советует минимизировать сетевую доступность контроллеров и не открывать их из интернета. Кроме того, контроллеры размещают за межсетевым экраном и отделяют от бизнес-сети. Для удалённого доступа предлагается VPN (виртуальная частная сеть), при этом CISA напоминает, что защищённость канала не выше защищённости подключённых устройств.
Первая уязвимость меняет файлы, доступные приложению, и потому влияет на целостность данных. Вторая отдаёт пароль восстановления контроллера тому, у кого есть доступ к журналам; при слабой изоляции журналов этого достаточно для действий на ПЛК. Обе проблемы закрывает обновление до 3.3.62.