Разработчики даже не подозревали, что их собственные инструменты работают против них.
Разрешение на редактирование одного чат-бота оказалось ключом ко всей системе: уязвимость Rogue Agent в Google Dialogflow CX позволяла атакующему с доступом к одному агенту перехватить остальных агентов с блоками кода в том же проекте Google Cloud.
По данным Varonis, проблема затрагивала организации, которые создавали агентов через Playbooks и добавляли собственный код на Python. Удалённая атака без учётной записи была невозможна. Для входа требовалось право dialogflow.playbooks.update, поэтому применить уязвимость мог недобросовестный сотрудник или злоумышленник, взломавший учётную запись разработчика.
Все агенты с блоками кода внутри одного проекта использовали общую среду Cloud Run. Специалисты выяснили, что код одного агента мог повлиять на компоненты, общие для других агентов в том же проекте. В результате злоумышленник с нужными правами мог добиться выполнения своего кода при запуске связанных чат-ботов.
Такая атака могла открыть доступ к истории разговоров, данным сеанса и механизму формирования ответов. В тестовой среде специалисты подтвердили возможность перехвата переписки и подмены сообщений, которые видел пользователь. Возврат исходного блока кода через консоль не устранял последствия атаки, поскольку внесённые изменения продолжали действовать в общей среде.
Varonis также обнаружила, что среда могла обращаться к внешним ресурсам и внутренним сервисам проекта. При этом подозрительные изменения почти не отражались в журналах клиента, поэтому администраторам было сложно обнаружить вмешательство.
Специалисты сообщили Google о проблеме в ноябре 2025 года. Компания выпустила первое исправление в апреле 2026 года, но полностью закрыла уязвимость только в июне. Идентификатор CVE ей не присвоили, признаков реального использования атаки не нашли.
Организациям, которые применяли Code Blocks до исправления, рекомендуют проверить пользователей с правом dialogflow.playbooks.update, изучить журналы изменений Playbooks, сопоставить подозрительные действия с пользователями, IP-адресами и временем доступа, а также вручную проверить все блоки кода в Dialogflow CX.