Как вредоносный плагин обманул AI-программистов
Представьте: вы установили для AI-программиста полезный плагин. Его код проверили, закрепили за конкретной версией - вроде бы всё безопасно. Но спустя время программа сама обновила плагин и получила уже совсем другой код.
Именно такая проблема получила название Plugin4Shell. Она затронула Claude Code, OpenAI Codex, GitHub Copilot и Gemini CLI.
Как такое вообще стало возможно?
Обычно программа должна убедиться, что устанавливает именно ту версию плагина, которую проверяли разработчики.
Для этого используется специальный идентификатор Git - длинная последовательность символов, своего рода «отпечаток» конкретной версии кода.
Но исследователи обнаружили неприятную деталь: несколько AI-кодинг-агентов получали код по этому идентификатору, но дополнительно не проверяли, что Git действительно вернул нужную версию.
В некоторых случаях злоумышленник мог создать ветку с названием, похожим на этот идентификатор. В результате агент мог получить уже изменённый код, хотя считал, что устанавливает проверенную версию.
Почему это особенно опасно для AI?
Обычный плагин может иметь ограниченные возможности. А AI-программист часто работает с проектом практически как настоящий разработчик: видит файлы, запускает команды и обращается к различным инструментам.
Поэтому вредоносный код внутри такого плагина потенциально получает те же права, которыми обладает сам AI-агент.
Особенно неприятным оказался вариант с автоматическим обновлением. Если обновление происходит без участия пользователя, человек может вообще не увидеть подозрительного запроса.
При этом речь не идёт о том, что любой пользователь интернета мог просто взять и взломать любой компьютер с AI-агентом. Для атаки требовались определённые условия, в том числе контроль над репозиторием плагина или возможность изменить его содержимое.
Что сделали разработчики?
По данным исследователей, Anthropic исправила проблему в Claude Code 2.1.179, а OpenAI - в Codex 0.146.0. Для GitHub Copilot на момент последних сообщений исправление не было выпущено. Google, в свою очередь, прекращает развитие Gemini CLI и рекомендует переходить на другой инструмент.
История Plugin4Shell показывает простую вещь: даже если AI умеет отлично писать код, безопасность зависит не только от самой нейросети.
Важны также плагины, обновления, права доступа и то, откуда агент получает дополнительные программы.
Комментарии
Чтобы оставить комментарий, войдите в аккаунт.