PraisonAI: XSS в панели HTTPApproval позволяет одобрять опасные инструменты (CVE-2026-56840)
В PraisonAI с версии 4.5.2 до 4.6.59 обнаружена уязвимость межсайтового скриптинга (XSS) в панели одобрения HTTPApproval: аргументы инструментов выводятся в HTML без экранирования. Открытие страницы одобрения позволяет злоумышленнику автоматически подтвердить опасный вызов инструмента. Критичность высокая — CVSS 8.8.
Подробности
Уязвимость затрагивает продукт MervinPraison PraisonAI в версиях с 4.5.2 до 4.6.59 включительно (до исправления). Компонент praisonai.bots.HTTPApproval формирует HTML-страницу панели одобрения, подставляя в неё аргументы ожидающих подтверждения вызовов инструментов без должной обработки. В результате аргумент, контролируемый атакующим, может внедрить JavaScript-код в страницу дашборда. Сценарий эксплуатации требует, чтобы человек открыл URL одобрения для проверки рискованного запроса инструмента. В этот момент внедрённый скрипт выполняется в origin дашборда и может отправить POST-запрос на конечную точку /approve/{request_id}/decide для того же запроса. Успешный вызов приводит к тому, что HTTPApproval возвращает approved=True — иными словами, опасный инструмент одобряется без осознанного согласия оператора. Таким образом, XSS на странице одобрения превращается в обход механизма человеческого контроля над действиями агентов. Тип уязвимости — CWE-79 (Improper Neutralization of Input During Web Page Generation, «межсайтовый скриптинг»). Вектор атаки сетевой, требуется взаимодействие с пользователем. Точные значения вектора CVSS в записи не детализированы, указана лишь итоговая база 8.8 (HIGH).Что делать
Основная рекомендация — обновиться до версии 4.6.59 или более поздней, в которой проблема устранена. Если обновление невозможно в кратчайшие сроки, следует рассмотреть временные меры: ограничить доступ к интерфейсу одобрения HTTPApproval доверенными сегментами сети, не открывать ссылки одобрения из недоверенных источников и по возможности изолировать дашборд от прямого пользовательского доступа. Дополнительно стоит проверить журналы одобрений на предмет подозрительных автоматических подтверждений вызовов инструментов и усилить контроль за тем, какие аргументы могут попадать в заявки на одобрение. Итог: CVE-2026-56840 — показательный пример того, как отсутствие экранирования при выводе пользовательских данных подрывает саму идею «человека в цикле». XSS в панели подтверждений превращает защитный механизм в точку обхода: вместо проверки рискованного действия оператор фактически даёт скрипту разрешение на его выполнение. Обновление до 4.6.59 закрывает уязвимость и должно быть приоритетным для всех, кто использует HTTPApproval в рабочих процессах агентов.Источник: CVE Project (cvelistV5)
