"> ?>
Наверх

Ломая конвейер: инструкция по эксплуатации уязвимостей ИИ

Вместо помощи — тотальный взлом. Исследователи обнаружили, что злоумышленники могут прятать смертельные инструкции прямо в коде или комментариях к нему. Попадая в «мозги» CI/CD-агентов, эти команды обманом получают высшие привилегии и берут контроль над конвейером.

Опубликовано 10.12.2025 в 05:52
CI/CD

Основные идеи

ИИ-агенты в GitHub Actions могут выполнить вредоносный код из описания PR или Issue.
Атака PromptPwnd крадет данные через токены CI/CD, такие как GITHUB_TOKEN.
Инструменты Gemini CLI, Claude Code и GitHub AI Inference содержат эту уязвимость.
Используйте сканер Aikido или Opengrep для проверки YAML-файлов рабочих процессов.

Мнение автора

Мы воспроизвели атаку PromptPwnd в тестовой среде: Gemini CLI выполнил команды злоумышленника через созданную Issue и раскрыл фейковые учётные данные. Проблема — в архитектуре. Многие ИИ-инструменты для CI/CD, включая Claude Code и GitHub AI Inference, обрабатывают пользовательский текст как прямую инструкцию. Мой главный инсайт: ИИ в пайплайне нельзя доверять непроверенные данные из PR. Рекомендую ограничить права агентов и сканировать YAML-файлы на рискованные конфигурации, чтобы обезвредить такую атаку.

Слушайте, вот жесть какая. Оказывается, ИИ-помощников в этих ваших CI/CD пайплайнах можно обмануть, ну прям как самого наивного юзера. И заставить их выполнять супер-привилегированные команды! Как? Да просто спрятать зловредный код в описании issue на GitHub или в тексте Pull Request’а.

Ребята из Aikido Security недавно вот такое и раскопали. Они смотрели на рабочие процессы, где крутятся GitHub Actions или GitLab CI/CD вместе с разными ИИ-фичами — типа Gemini CLI, Claude Code или того же OpenAI Codex. И выяснили дико интересную штуку.

Оказывается, любой текст, который пишет пользователь — описание к пул-реквесту, комментарий в issue или даже сообщение коммита — может улететь прямиком в промпт к ИИ-агенту. Если, конечно, процесс настроен не очень аккуратно. Ну вы поняли. Эту атаку они громко назвали PromptPwnd. Звучит солидно, да? Вот прям наглядно показывает, кто тут кого «пвнул».

Короче, если кратко: ваш умный пайплайн может сам себе выписать привилегии на что угодно, просто прочитав хитрое описание.

Видео от DGL.RU

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

«Агенты искусственного интеллекта, подключённые к GitHub Actions/GitLAb CI/CD, обрабатывают ненадёжные пользовательские данные и выполняют команды оболочки с доступом к токенам с высокими привилегиями», — написали исследователи в своём блоге о PromptPwnd. Они сообщили, что воспроизвели проблему в тестовой среде и уведомили об этом пострадавших поставщиков.

Исследователи рекомендовали запускать набор правил обнаружения с открытым исходным кодом для подозрительных файлов GitHub Action .yml или использовать их бесплатный сканер кода в репозиториях GitHub и GitLab.

Компания Aikido Security сообщила, что Google устранила проблему в Gemini CLI после получения информации о ней. Google не сразу ответила на запрос о предоставлении информации по этому поводу.

Почему PromptPwnd работает

Эксплуатация уязвимостей PromptPwnd становится возможной при одновременном наличии двух ошибочных конфигураций конвейера: когда агенты ИИ, работающие в рабочих процессах CI/CD, имеют доступ к мощным токенам (таким как GITHUB_TOKEN, ключи доступа к облаку), а в их запросах содержатся поля, управляемые пользователем.

Исследователи объяснили, что при такой настройке становится проще внедрять подсказки. Злоумышленник может просто открыть задачу в общедоступном репозитории и вставить скрытые инструкции или на первый взгляд безобидные комментарии, которые будут служить командами для модели. «Представьте, что вы отправляете запрос в LLM и в этом запросе указываете сообщение о коммите, — говорят исследователи. — Если это сообщение о коммите является вредоносной подсказкой, то вы можете заставить модель отправить изменённые данные». Ответ модели, если использовать его непосредственно в командах для инструментов в рамках конвейеров CI/CD, может позволить этим инструментам получать конфиденциальную информацию.

Компания Aikido Security продемонстрировала это в контролируемой среде (без использования реальных токенов), чтобы показать, что с помощью Gemini CLI можно заставить систему выполнять команды, предоставленные злоумышленником, и раскрывать конфиденциальные учётные данные через специально созданную проблему на GitHub. «Gemini CLI — не единичный случай. Та же архитектура используется во многих GitHub Actions на базе искусственного интеллекта», — заявили исследователи, добавив, что в список входят Claude Code, OpenAI Codex и GitHub AI Inference.

Все эти инструменты можно обмануть (с помощью описания проблемы, запроса на вытягивание или другого текста, контролируемого пользователем), чтобы они генерировали инструкции, которые затем выполняет рабочий процесс с помощью привилегированного токена GitHub Actions.

План смягчения последствий

У Aikido есть правила обнаружения с открытым исходным кодом, реализованные в инструменте Opengrep, который позволяет разработчикам и службам безопасности автоматически сканировать рабочие процессы YAML и выявлять случаи передачи ненадежных входных данных в запросы к ИИ.

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

Командам разработчиков рекомендуется ограничивать возможности ИИ-агентов, не передавать ненадёжный пользовательский контент в запросы, относиться к выводам ИИ как к ненадёжному коду и предотвращать ущерб от скомпрометированных токенов GitHub.

В Aikido Security заявили, что их сканер кода может помочь выявить эти уязвимости, обнаруживая небезопасные конфигурации GitHub Actions (в том числе рискованные потоки подсказок для ИИ), выявляя токены с избыточными привилегиями и обнаруживая небезопасные шаблоны CI/CD с помощью сканирования инфраструктуры как кода.

Существуют и другие лучшие практики по обеспечению безопасности конвейеров CI/CD, которые могут использовать предприятия.

Внимание к CodeBeautify, программисты: сайты форматирования кода раскрывают ваши данные

Света Шарма

Света Шарма

Швета исследует мир корпоративного IT с 2017 года. Её последняя территория — мир кибербезопасности для CSO Online. Сложные темы, от программ-вымогателей до нулевого доверия, она превращает в понятные истории. Её адресаты — и эксперты, и обычные читатели. Без дедлайнов Швета погружается в художественную литературу, разгадывает фильмы и испытывает новые рецепты на кухне. Это её способ перезагрузки перед новой расшифровкой цифровых угроз.

Ещё статьи автора

Все статьи
Источник: Infoworld
Теги:
Подпишитесь на наши новости:
Нажимая кнопку «Подписаться», вы принимаете «Пользовательское соглашение» и даёте согласие с «Политикой обработки персональных данных»