Air Security нашла уязвимость в четырёх ИИ-агентах для кода, позволяющую подменять закреплённый плагин

Материал подготовлен искусственным интеллектом на основе нескольких источников — ссылки на оригиналы приведены ниже.
Компания Air Security сообщила в четверг, что уязвимость в четырёх популярных ИИ-агентах для написания кода позволяет владельцу репозитория подменить закреплённый плагин вредоносным кодом. Anthropic исправила проблему в Claude Code 2.1.179, OpenAI — в Codex 0.146.0, тогда как GitHub Copilot не получил исправления, а Google не будет патчить Gemini CLI, который выводится из эксплуатации.
Ключевые факты
- Air Security сообщила об уязвимости в четверг, затрагивающей четыре ИИ-агента для кода: Claude Code, Codex, GitHub Copilot и Gemini CLI.
- Anthropic исправила уязвимость в Claude Code 2.1.179, а OpenAI — в Codex 0.146.0.
- GitHub Copilot не получил исправления, а Google не будет патчить Gemini CLI, который выводится из эксплуатации.
- Атака работает путём создания ветки с именем, похожим на хеш коммита, на хостах, которые разрешают такие имена, например Bitbucket или собственный git-сервер компании.
- Фоновое автообновление, включённое по умолчанию в Claude Code и Codex, может заменить доверенный плагин без действий пользователя.
Механизм уязвимости
Агенты устанавливают плагины из онлайн-маркетплейсов, которые закрепляют каждый плагин за определённой проверенной версией по хешу коммита. Air Security обнаружила, что агенты загружают закреплённый снимок, но не проверяют, соответствует ли полученный код хешу коммита. На хостингах кода, разрешающих имена веток, похожие на хеши коммитов, владелец репозитория может указать это имя на другой код, и агент установит другой код, сообщая при этом, что он находится на закреплённой версии. Поскольку плагин работает с теми же правами, что и пользователь, подменённый код может получить доступ к файлам, сохранённым учётным данным и системам, в которые пользователь может войти.
Затронутые агенты и исправления
Anthropic исправила уязвимость в Claude Code 2.1.179, а OpenAI — в Codex 0.146.0. GitHub Copilot не получил исправления, а Google не будет патчить Gemini CLI, который выводится из эксплуатации. Gemini CLI может быть атакован через репозиторий, основная ветка которого названа FETCH_HEAD, что правило GitHub против имён, похожих на хеши, явно не блокирует.
Подверженность и меры защиты
GitHub не разрешает имена веток или тегов, похожие на хеши коммитов, поэтому плагины, установленные из репозиториев GitHub, не подвержены трюку с веткой. The Hacker News проверила маркетплейсы по умолчанию 18 сентября и обнаружила, что каждый плагин в каталоге сообщества Anthropic и в каталогах по умолчанию для Claude Code и Copilot указывает на репозиторий GitHub. Фоновое автообновление работает по умолчанию в Claude Code и Codex, но только для встроенных маркетплейсов, размещённых на GitHub, и отключено или опционально для внешних. Пользователи, устанавливающие плагины только из маркетплейсов по умолчанию на базе GitHub, не подвержены версии атаки с именем ветки, согласно Air Security и документации GitHub.