Google закрыл серьёзную уязвимость в Antigravity IDE, которая могла позволить злоумышленникам выполнять произвольный код. Инцидент выявил недостатки в механизме проверки входных данных, которые использовались для обхода системы безопасности инструмента.
Как работала уязвимость
Ключевая уязвимость связана с инструментом поиска файлов find_by_name, который был недостаточно защищён. Злоумышленники могли использовать параметр Pattern для внедрения команды, которая обходит режим строгой безопасности, позволяя выполнять произвольные скрипты. Это стало возможным благодаря тому, что команда выполнялась до применения всех ограничений, что делало её уязвимой для атак.
По информации исследователя кибербезопасности Дэна Лисичкина из Pillar Security, с помощью флага -X (exec-batch) можно заставить инструмент fd исполнять небезопасные команды. Злоумышленник мог подготовить скрипт и активировать его через «безобидный» запрос, не привлекая внимания пользователя.
Общие уязвимости AI-инструментов
Эта проблема совпадает с обнаружением других уязвимостей в AI-инструментах, таких как Anthropic Claude, Google run-gemini-cli и GitHub Copilot. Все они подвержены атакам по схожей схеме, где могли использоваться вводимые эти для кражи API-ключей и токенов через манипуляции с содержанием комментариев.
Атака с использованием скомпрометированных файлов без необходимости доступа к аккаунту жертвы также подчеркивает серьёзность проблемы. Исследователи считают, что недоработки в валидации входных этих становятся угрозой для множества AI-агентов, работающих с потенциально опасными данными.
Что важно для разработчиков
Для разработчиков использование Antigravity IDE теперь связано с рисками, связанными с недостатками в системах безопасности. Учитывая, что инструменты могут быть скомпрометированы через вводимые данные, важно следить за обновлениями безопасности и проверять интеграции. Криптографические меры и строгая валидация входящих параметров могут защитить проекты от подобных атак.
Следующий шаг для Google — мониторинг возможных новых уязвимостей и их устранение в других инструментах. Критически важно не только исправлять обнаруженные проблемы, но и внедрять профилактические меры для минимизации рисков.