Progress Software закрыла уязвимость внедрения команд в генераторе ИИ-агентов, который входит в состав Autonomous REST Connector. Ошибка получила идентификатор CVE-2026-91140 и оценку 9.6 по шкале CVSS. Уровень опасности вендор обозначил как критический. Затронуты определения агентов, которые распространялись через публичный репозиторий progress/datadirect-arc-ai-model-gen как ранний доступ (Early Access Release). В списке уязвимых три файла: генератор ARCGenAI-Generator версии 2.0, его шаблон запроса версии 1.0 и вспомогательный агент ARCGenAI-EntityGen версии 1.0. Пострадать могут разработчики, которые запускали эти агенты на документах OpenAPI/Swagger из внешних источников.
Уязвимость CVE-2026-91140
Механика уязвимости связана с очисткой временных файлов. Агент брал имя файла из документа OpenAPI/Swagger и подставлял его в команду оболочки. Проверки и экранирования не хватало. Документ OpenAPI или Swagger - это машиночитаемое описание веб-интерфейса, которое разработчики часто получают от поставщиков и партнёров. Специально составленный файл добавлял в имя метасимволы оболочки, и штатная операция становилась запуском произвольных команд. Исполнялись они в той среде, где работает агент: на машине разработчика или на сервере непрерывной интеграции (CI - сборочный конвейер, который автоматически собирает и проверяет код).
Из вектора CVSS видно, что предварительная аутентификация не нужна и права не требуются, а сложность эксплуатации низкая. Единственное условие со стороны жертвы - открыть документ и запустить генератор. Рейтинг 9.6 складывается из низкой сложности атаки и полного набора последствий. Ущерб по конфиденциальности, целостности и доступности оценивается как высокий. Отдельно отмечено изменение области действия, то есть последствия не ограничиваются одним компонентом.
Успешная эксплуатация даёт атакующему те же возможности, что и у запущенного агента. А у него доступ к рабочему каталогу, сборочным скриптам и переменным окружения. На машине разработчика обычно лежат ключи к репозиториям, токены CI, учётные данные внешних сервисов и исходный код. Их компрометация открывает путь к более широкому проникновению в инфраструктуру. Через сборочный конвейер чужой код может попасть и в готовые артефакты, поэтому одна ошибка во вспомогательном инструменте способна дать начало атаке на цепочку поставок.
Отдельного сообщения об ошибке уязвимость не вызывает. Заподозрить неладное можно по неожиданным файлам, командам и другим изменениям в рабочем пространстве или в среде CI, где агент обрабатывал поддельный документ. Если агенты уже запускались на недоверенных или сторонних документах, вендор советует проверить и рабочее пространство, и сборочную среду: журналы сборок, содержимое каталогов, изменения в скриптах. Автоматических средств обнаружения для этой ошибки Progress не предлагает.
Уведомление и запись CVE опубликованы 6 октября 2026 года. Progress отнесла проблему к классу CWE-78 - неправильная нейтрализация специальных символов в командах операционной системы. Это один из старейших и самых распространённых классов ошибок, и он возвращается вместе с новыми инструментами. Генераторы кода, агенты и вспомогательные утилиты всё чаще получают право запускать команды оболочки от имени разработчика. Определения агентов по сути такое же исполняемое содержимое, как библиотека или плагин. Обновлять их нужно с той же дисциплиной, что и обычные зависимости. Особенно когда речь о сборках раннего доступа, которые не проходят полный цикл проверок.
Исправление уже доступно: определения агентов обновили до версии 2.1. Установщик, отдельный патч и миграция не нужны. Достаточно заново скачать файлы определений из репозитория ARC AI Model Generator и только после этого снова запускать агентов. Тем, кто обновляет инструменты централизованно, имеет смысл зафиксировать в конфигурациях именно версию 2.1. Иначе старые определения вернутся вместе с копированием настроек на новые машины. Вопросы по исправлению принимают через службу поддержки на портале сообщества Progress, а уведомления о безопасности рассылает служба Progress Alert and Notification Service.
Инструменты на основе больших языковых моделей появляются быстрее, чем устоявшиеся практики их безопасной эксплуатации. Агент, которому доверили файловую систему и командную оболочку, становится полноценным участником процесса сборки. Ошибка в обработке внешних данных у такого участника стоит дорого. Документ от партнёра воспринимается как данные, а исполняется как код, и эта разница часто остаётся незамеченной до первого разбора последствий. Проверять входные документы, ограничивать права агентов и держать их определения в актуальном состоянии - базовый набор мер, который снижает риск. Progress закрыла конкретную брешь, однако сам подход к использованию ИИ-агентов в сборочных цепочках требует пересмотра у многих команд.
Ссылки
- https://www.cve.org/CVERecord?id=CVE-2026-91140
- https://community.progress.com/s/article/Progress-DataDirect-Critical-Security-Alert-Bulletin-September-2026-CVE-2026-91140