Найти в Дзене

Уязвимость в инструменте Gemini CLI позволяла хакерам тайно запускать вредоносные команды

Оглавление
Источник: ArsTechnika.com
Источник: ArsTechnika.com

Всего за 48 часов после релиза нового инструмента Google — Gemini CLI — исследователи из компании Tracebit обнаружили критическую уязвимость, позволявшую злоумышленникам тайно красть конфиденциальные данные с компьютеров пользователей. Проблема заключалась в том, что атакующий мог заставить инструмент выполнять опасные команды без ведома разработчика, просто замаскировав их в безобидном пакете кода.

Gemini CLI — это бесплатный и открытый инструмент на базе ИИ, который помогает разработчикам писать код прямо в терминале. Он работает с моделью Gemini 2.5 Pro, самой продвинутой версией от Google. По сути, это аналог Gemini Code Assist, но с интеграцией в командную строку, а не в редактор кода.

Как работала атака?

Уже 27 июня, через два дня после публикации новости о запуске Gemini CLI, специалисты Tracebit разработали эксплойт, обходящий встроенные механизмы защиты. Для осуществления атаки требовалось всего два действия со стороны пользователя:

  1. Попросить Gemini CLI описать вредоносный пакет кода.
  2. Добавить безобидную команду в список разрешённых (allow list).

Сам пакет выглядел совершенно безобидно — как миллионы других в репозиториях вроде NPM, PyPI или GitHub, но в файле README.md — стандартном описании проекта — скрывалась ловушка: несколько строк естественного языка, содержащих инъекцию промпта (prompt injection).

Это один из самых опасных типов атак на ИИ: модель не различает, где официальный запрос, а где скрытая команда, спрятанная в тексте. Разработчики редко внимательно читают README-файлы, а вот ИИ-ассистент анализирует их полностью. Чтобы пользователь не заподозрил неладное, хакеры добавили большое количество пробелов между командами.
В интерфейсе Gemini CLI отображалась только первая, безобидная часть — grep install README.md, — а вредоносный код прятался дальше в сообщении. Пользователь видел, что всё в порядке, а тем временем его данные уже утекали на удалённый сервер.

Самое страшное — это могло быть только началом. По словам Сэма Кокса, основателя и CTO Tracebit, эксплойт позволял выполнять любые команды.

Ответ Google

В ответ на уязвимость Google оперативно выпустил исправление, заблокировавший технику атаки. Компания присвоила уязвимости наивысший приоритет — Priority 1 и Severity 1, что означает критическую опасность. Такая оценка свидетельствует: если бы уязвимость попала в руки злоумышленников, последствия могли быть катастрофическими.

Почему это важно?

Атака — пример так называемой непрямой инъекции промпта (indirect prompt injection), когда вредоносный текст маскируется в нормальных данных, которые ИИ обрабатывает. Проблема в том, что современные языковые модели не умеют отличать «инструкции от пользователя» от «данных, которые нужно проанализировать». Это фундаментальная слабость, которую пока не удаётся полностью устранить.

Кроме инъекции, атака использовала ещё две уязвимости: слабую валидацию команд и вводящий в заблуждение интерфейс, который не показывал полную строку выполнения.

Источник