Google Agent Development Kit, опенсорсный фреймворк компании для сборки ИИ-агентов, скачали уже больше 90 миллионов раз. При этом проблемы, которые нашла в его репозитории команда Pillar Security, касаются не самого кода, а автоматизации сопровождения проекта на GitHub. И уязвимость оказалась не одна, а целых две.

Первая связана с тем, как устроены пул-реквесты в репозитории ADK. Злоумышленник мог открыть PR с настоящим исправлением, внутри которого спрятан вредоносный код, а следом создать второй PR, где прятался промпт-инжект. Автоматизированный агент на базе Gemini, проверявший изменения, рано или поздно «съедал» подсунутую инструкцию. Дальше атакующий получал GitHub-токен и мог уже сам менять комментарии, issues и пул-реквесты, отклонять чужие ревью, одобрять изменения и запускать GitHub Actions.

Хуже того, этой схемой легко фабриковалась полностью поддельная история проверки: в логах всё выглядело так, будто человек запросил ревью, Gemini изучил код и одобрил его. На самом деле ничего этого не было.

Второй вариант атаки оказался опаснее. Он затрагивал воркфлоу на базе Antigravity SDK, где публичный агент автоматически разбирал новые issues и оставлял комментарии. Через промпт-инжект в issue агента можно было заставить выполнить произвольные действия. Работал он в окружении, где лежали токен бота, API-ключ Google и учётные данные сервисного аккаунта. С такими правами агент мог менять содержимое репозитория, создавать ветки и пул-реквесты.

Разработчики воркфлоу пытались ограничить агента, разрешив ему только команды gh и git. Но ему оставили возможность записывать файлы, а этого хватило: вредоносный пейлоад сохранялся на диск и выполнялся.

Хорошая новость в том, что скомпрометированных релизов ADK эксперты не нашли, следов эксплуатации этих багов в реальных атаках тоже. Инженеры Google уже усилили защиту репозитория и удалили три проблемных воркфлоу.

Вывод исследователей, если коротко, простой: изоляции агентов больше недостаточно. У каждого бота должна быть собственная учётная запись с минимально необходимыми правами и жёсткими ограничениями на доступ к ресурсам. Иначе одна удачно подсунутая инструкция превращает помощника в инструмент для взлома собственного проекта.