Мой блог
Shadow AI в CI/CD: почему ИИ-агенты становятся угрозой для инфраструктуры
Теневой ИИ в разработке: от подсказок в коде до автономных действий
Внедрение искусственного интеллекта в процессы создания и поставки программного обеспечения идет быстрыми темпами. Зачастую скорость интеграции новых сервисов существенно опережает адаптацию корпоративных регламентов и систем информационной безопасности. В результате возникает так называемый Shadow AI («теневой ИИ») — применение любых сторонних ИИ-моделей, плагинов, агентов или API-интеграций без согласования с подразделениями безопасности, без назначения ответственных лиц и без проведения оценки рисков.
Для специалистов по платформе и информационной безопасности проблема выходит далеко за рамки простой утечки исходного кода через формы публичных чат-ботов. Когда нейросетевым агентам предоставляются права на вызов внешних команд, редактирование репозиториев и взаимодействие с инфраструктурой, они превращаются из вспомогательных инструментов продуктивности в самостоятельные нечеловеческие субъекты (идентичности). Такие сервисы обладают собственными полномочиями, зоной потенциального поражения и формируют вектор атак, который необходимо закладывать в модель угроз.
Я проанализировал типичный жизненный цикл поставки ПО в облачно-нативной среде — от локального окружения инженера до запущенного пода в кластере Kubernetes. Ниже мы подробно разберем, на каких участках возникают уязвимости, связанные с Shadow AI, и какие открытые экосистемные проекты позволяют парировать эти риски уже сегодня.


От рекомендаций к автономным действиям
Уровень угрозы кардинально меняется, когда нейросеть перестает работать в режиме пассивного подсказчика и начинает принимать самостоятельные решения в системах.
- Пассивный ассистент (генерация фрагментов кода): основные риски связаны с попаданием конфиденциальных данных за пределы периметра или с некритичным принятием разработчиком ошибочного фрагмента без проверки.
- Активный ИИ-агент (обладатель сервисных токенов Git, облачных ключей или ServiceAccount в Kubernetes): способен вносить изменения, пересоздавать или удалять ресурсы с высокой скоростью. Для управляющей среды Kubernetes такие действия выглядят как легитимная, хоть и разрушительная автоматизация.
При построении процессов безопасности я рекомендую сместить фокус с абстрактных обсуждений на конкретные операционные вопросы:
- Какие именно ИИ-инструменты и агенты фактически задействованы командами?
- К каким именно категориям данных они имеют доступ?
- Какими системными правами и сервисными учетными записями наделен каждый агент?
- Кто из сотрудников назначен ответственным владельцем конкретного ИИ-компонента?
- Существует ли процедура мгновенного отзыва сервисных прав при аномальном поведении агента?
Эффективная концепция безопасности требует, чтобы за любым ИИ-агентом был закреплен конкретный человек-владелец. Сам агент обязан быть зарегистрирован как управляемая рабочая нагрузка, действовать строго в рамках наименьших привилегий и находиться под непрерывным аудитом.
Анализ жизненного цикла доставки ПО и точек внедрения Shadow AI
Теневой ИИ может проникнуть в инфраструктуру на любом из этапов создания продукта. Графическая схема демонстрирует последовательный путь релиза и защитные барьеры, предотвращающие компрометацию:
| Этап поставки | Типичное проявление Shadow AI | Основной риск для безопасности |
|---|---|---|
| Ноутбук разработчика | Установка несогласованных плагинов автодополнения, использование сторонних нейросетей. | Утечка исходных текстов, API-ключей и архитектурных описаний за пределы организации. |
| Система контроля версий (VCS) | Подключение ИИ-ботов для автоматического проведения ревью, создания коммитов и аннотаций. | Избыточные права доступа к репозиториям, внесение небезопасных изменений, отсутствие владельца. |
| CI-пайплайн | Автоматическая генерация скриптов сборки, анализ логов сбоев и попытки «автоисправления». | Компрометация секретов сборки, перехват ключей, внедрение вредоносных шагов в цепочку поставок. |
| Реестр артефактов | Выбор базовых контейнерных образов и сторонних библиотек по рекомендациям ИИ. | Попадание уязвимых, заброшенных или скомпрометированных зависимостей в продакшен. |
| CD-платформа | Автономная модификация конфигураций развертывания, одобрение релиза или откат ИИ-агентом. | Обход регламентов контроля изменений, несанкционированные релизы, утеря трассируемости. |
| Рантайм Kubernetes | Использование ИИ-агентов для автоматического устранения инцидентов и масштабирования. | Наличие сверхпривилегированных ServiceAccount, деструктивные действия в кластере, несанкционированный доступ. |
Модель угроз: защищаемые ресурсы и векторы атак
Построение модели угроз не требует предсказания абсолютно всех гипотетических сценариев. Практическая задача состоит в четком определении ценных активов, потенциальных векторов их компрометации и контрмер, снижающих возможный ущерб.
Критически важные активы для защиты
- Кодовая база и проприетарные алгоритмы.
- Аутентификационные токены, API-ключи, сертификаты и прочие секреты.
- Персональные данные пользователей, сотрудников и коммерческая тайна.
- Конфигурационные файлы CI/CD и приватные ключи подписи артефактов.
- Идентификаторы доступа в облачных провайдерах и Kubernetes.
- Целостность реестра контейнеров и цепочки поставок ПО (Software Supply Chain).
- Непрерывная доступность продакшен-окружения.
Субъекты угроз и специфические риски
Практика показывает, что Shadow AI редко стартует с целенаправленного инсайдского вредительства. Обычно инженер руководствуется благими намерениями, пытаясь ускорить решение рутинных задач. Однако возникающая слепая зона становится удобной мишенью для сторонних нарушителей. В число потенциальных субъектов угроз входят:
- Внешние злоумышленники, атакующие открытые API-интерфейсы ИИ-сервисов или использующие утечки учетных данных.
- Недобросовестные внутренние пользователи, злоупотребляющие широкими правами ИИ-ботов.
- Скомпрометированные сторонние поставщики ИИ-решений и SaaS-платформ.
- Атакующие, применяющие техники промпт-инъекций (Prompt Injection) для манипулирования поведением агентов.
- Легитимные ИИ-агенты, совершающие деструктивные действия из-за некорректных инструкций или избыточного контекста.
Инъекция инструкций (промпт-инъекция) является сквозной угрозой. Агенты постоянно обрабатывают неконтролируемый контент: тексты задач в трекерах, файлы README, описания изменений в сторонних библиотеках, логи сбоев. Любой из этих источнику данных может содержать скрытые команды, побуждающие ИИ выдать секреты или выполнить некорректную операцию. Одним лишь фильтром входного текста эту проблему не решить — требуется комплексная эшелонированная защита. Хорошим ориентиром для анализа сценариев отказов служат руководства OWASP по безопасности LLM-приложений и ИИ-агентов.
Детализация атак по этапам поставки и соответствующие контрмеры
1. Локальное окружение разработчика
Сценарий риска: Инженер устанавливает малоизвестное расширение для среды разработки или копирует фрагменты логов с ошибками в публичный нейросетевой чат. В логи могут попадать токены доступа, внутренние доменные имена или персональные данные клиентов. Компания теряет контроль над тем, где хранятся и как обрабатываются эти сведения. Кроме того, разработчик может не глядя выполнить команду, сгенерированную нейросетью, или подключить по ее совету сторонний пакет.
Контрмеры:
- Предоставьте сотрудникам официальные, проверенные ИИ-инструменты. Полные административные запреты лишь вынуждают инженеров скрывать использование нейросетей.
- Внедрите обязательную автоматическую проверку коммитов на наличие секретов до отправки в репозиторий. Для этого настраиваются pre-commit хуки с использованием
gitleaks. Коммиты следует подписывать: проектGitsign(часть Sigstore) позволяет подписывать изменения короткоживущими сертификатами на основе OIDC-идентичности инженера или агента. - Для работы автономных агентов применяйте изолированные среды. Вместо запуска команд на локальном хосте используйте одноразовые микро-ВМ или изолированные контейнеры. Внутри такого окружения должны отсутствовать SSH-ключи разработчика и глобальные учетные данные облака. При скомпрометированном выполнении среда просто уничтожается без ущерба для основной системы. Для этого подходят технологии на базе microVM или рантаймы с перехватом системных вызовов (например, gVisor, Firecracker или ToolHive).
2. Система контроля версий (Git)
Сценарий риска: К Git-серверу подключается ИИ-бот с глобальными правами чтения и записи. Он выполняет код-ревью, создает ветки и формирует pull request’ы. Если маркер доступа этого бота будет перехвачен или сам бот подвергнется промпт-инъекции через текст задачи, злоумышленники смогут внедрить вредоносный код или извлечь содержимое закрытых репозиториев.
Контрмеры:

- Каждая ИИ-интеграция должна иметь выделенную учетную запись, четкого владельца, минимально необходимую область доступа (scoped permissions) и короткий срок жизни токенов. Ассистент для одной команды не должен иметь доступа ко всем проектам организации.
- Все изменения, вносимые ИИ-агентами, должны проходить обязательный человеческий контроль (Human-in-the-loop). Автоматический аппрув от самого ИИ-бота должен быть запрещен.
3. Автоматизация CI-пайплайнов
Сценарий риска: Среда CI содержит наиболее критичные учетные данные: ключи доступа к реестрам контейнеров, токены деплоя и сертификаты подписи. Если ИИ-компонент анализирует логи сбоев или пытается автоматически «исправить» упавшую сборку, внедренная в исходники или логи промпт-инъекция может заставить его выдать эти секреты наружу.
Контрмеры:
- Исключите передачу долгоживущих секретов в контекст промптов и текстовые логи.
- Запускайте задачи с участием ИИ в изолированных runner’ах с временными ограничениями и минимальными правами.
- Используйте механизмы Admission Control на уровне Kubernetes-нативного CI. Правила
KyvernoилиOPA/Gatekeeperзаблокируют попытку развертывания неподписанного или не соответствующего политикам образа, даже если ИИ-агент попытается обойти стандартный шаг пайплайна.
4. Реестр артефактов и безопасность цепочки поставок
Сценарий риска: Сгенерированный нейросетью код может содержать ссылки на несуществующие или уязвимые библиотеки, заброшенные базовые контейнеры или сомнительные зависимости, не прошедшие проверку на лицензионную чистоту.
Контрмеры:

Применяйте к коду и сборкам от ИИ те же жесткие требования, что и к человеческому труду. Типовая цепочка инструментов защиты включает:
TrivyилиGrype— сканирование контейнеров и IaC-манифестов на известность уязвимостей (CVE).Syft— автоматическое формирование спецификации программных компонентов (SBOM).Cosign(проект Sigstore) — электронная подпись сформированных контейнерных образов и аттестатов.in-toto— фиксация и проверка цепочки происхождения артефактов (SLSA provenance).Notation(Notary Project) — верификация подписей на стороне реестра артефактов.
5. Непрерывная доставка (CD) и GitOps
Сценарий риска: Релизный ИИ-агент обладает правами на редактирование Helm-чартов, изменение конфигураций GitOps или прямое управление развертыванием в продакшене. Без ограничений такой инструмент может нарушить регламенты проведения изменений.
Контрмеры:
Четко разделяйте функцию «формирования рекомендации» и функцию «выполнения действия». Все критические операции (деплой в прод, удаление ресурсов, изменение сетевых правил) должны проходить через точку подтверждения человеком.

В архитектуре GitOps роль защитного барьера выполняет Pull Request. ИИ-агент может лишь предложить изменения в манифестах. После одобрения изменений человеком GitOps-контроллер (например, Argo CD или Flux) синхронизирует состояние кластера. При этом сам контроллер принимает команды только из Git, полностью игнорируя прямые инструкции от ИИ.
6. Рантайм-среда Kubernetes
Сценарий риска: ИИ-агенту, предназначенному для анализа и устранения инцидентов, выдаются административные права в кластере. В случае компрометации такой агент превращается в идеальный инструмент для чтения секретов, запуска вредоносных нагрузок и горизонтального перемещения по сети (lateral movement).
Контрмеры:
- SPIFFE/SPIRE: наделение каждого агента и сервиса уникальной криптографической идентичностью вместо использования долгоживущих токенов.
- Строгий RBAC: ограничение прав агента рамками конкретного namespace и базовым набором API-глаголов. Например, если агенту требуется перезапускать Deployment, ему достаточно роли в одном неймспейсе с доступом к API-группе
apps, ресурсуdeploymentsи разрешениямиget,list,patch(так как командаrollout restartвыполняется черезpatch). Праваcreateиdeleteдолжны быть исключены. - Детекция аномалий на eBPF: использование
FalcoилиTetragon(компонент Cilium) для немедленного обнаружения подозрительной активности в контейнерах (запуск интерактивного shell, несанкционированное чтение секретов, незапланированные сетевые соединения). - Сетевая сегментация: применение NetworkPolicies для ограничения межсерверного трафика.
Системный подход к управлению ИИ-агентами
Главная цель создаваемых барьеров — не заблокировать применение ИИ, а сделать его прозрачным, управляемым и безопасным.
Инвентаризация и учет ИИ-компонентов
Необходимо вести динамический реестр всех используемых ИИ-инструментов, моделей, локальных расширений, ботов и MCP-серверов (Model Context Protocol). Каждая запись в реестре должна содержать:
- Технического и бизнес-владельца из числа сотрудников.
- Назначение инструмента и список его пользователей.
- Уровень конфиденциальности данных, к которым разрешен доступ.
- Подключенные системы и их объем привилегий.
- Регламент проверки и процедуру оперативного отзыва прав.
ИИ-агент как полноценная цифровизация идентичности
Запрещается использование агентами персональных учетных записей инженеров или общих административных аккаунтов. Каждому ИИ-агенту присваивается собственная сервисная идентичность со следующими правилами:
- Раздельные учетные данные для тестовых и продуктовых сред.
- Использование короткоживущих токенов вместо бессрочных ключей.
- Приоритет прав «только на чтение» (Read-Only).
- Ограничение прав в Kubernetes рамками одного неймспейса.
- Запрет необязательных внешних сетевых вызовов (allowlist по умолчанию).
Для управления идентичностью внутри кластера применяются SPIFFE/SPIRE и cert-manager, а для внешних интеграций с Git-хостингами и таск-трекерами — Keycloak.
Матрица контроля в зависимости от зоны поражения
| Возможности ИИ-компонента | Требуемый уровень контроля и защиты |
|---|---|
| Объяснение кода, составление черновиков документации | Использование одобренных сервисов, обучение сотрудников, классификация данных. |
| Генерация вариантов кода | Обязательный ревью человеком, сканирование секретов, проверка зависимостей. |
| Автоматическое создание PR | Ограниченные права в Git, запрет автоаппрува. |
| Модификация CI/CD-пайплайнов | Изолированное выполнение задач, проверка через Policy-as-Code. |
| Реагирование на инциденты в K8s | Строгий RBAC на уровне namespace, полный аудит, подтверждение человеком критических действий. |
| Автономные действия в продакшене | Запрет по умолчанию или строго временный доступ, наличия «кнопки отключения» (Kill Switch), непрерывный eBPF-мониторинг. |
Принцип многоуровневой защиты (Defense in Depth)
Ни один одиночный барьер (например, текстовый фильтр промптов) не гарантирует стопроцентной защиты. Архитектура должна выдерживать компрометацию отдельного слоя без риска нанесения критического ущерба системе в целом.
Обзор открытого инструментария (CNCF и Open Source)
Для реализации описанных защитных механизмов целесообразно использовать готовые проекты экосистемы Cloud Native Computing Foundation (CNCF) и проверенный открытый софт:
| Категория защиты | CNCF-проекты | Другие Open Source решения | Назначение |
|---|---|---|---|
| Admission & Политики K8s | Kyverno, OPA/Gatekeeper, Kubescape, Kubewarden | Polaris, kube-bench | Принудительное соблюдение правил развертывания, блокировка неподписанных образов. |
| Детекция в рантайме | Falco, Tetragon (Cilium), KubeArmor, Inspektor Gadget | Tracee, osquery, Wazuh | Мониторинг аномального поведения процессов, файлов и сети. |
| Сетевая сегментация | Cilium, Istio, Linkerd, Antrea | Calico Open Source | Ограничение трафика между сервисами, контроль исходящих вызовов к LLM. |
| Идентичность агентов | SPIFFE/SPIRE, cert-manager, Keycloak | Teleport, Zitadel, authentik, Ory Hydra | Выдача короткоживущих сертификатов и управление правами агентов. |
| Безопасность Supply Chain | in-toto, TUF, Notary/Notation | Sigstore/Cosign, Trivy, Syft, Grype, GUAC | Сканирование уязвимостей, генерация SBOM, подпись коммитов и артефактов. |
| Управление секретами | OpenBao, SOPS, External Secrets Operator | Sealed Secrets, gitleaks, TruffleHog, Infisical | Динамическая выдача ключей, поиск утечек секретов в коде и логах. |
| Изоляция рантайма | Confidential Containers | Kata Containers, Firecracker, gVisor, ToolHive | Запуск агентов в изолированных одноразовых средах (microVM). |
| Управление ИИ и MCP | kagent, Envoy AI Gateway, Backstage, OpenTelemetry | agentgateway, agentregistry, ToolHive, ContextForge | Регистрация агентов, проксирование MCP-трафика, трассировка вызовов инструментов. |
Важные нюансы лицензирования и развитие экосистемы
При выборе инструментов я советую обращать внимание на два момента:
- Коммерческая модель: часть проектов развивается по модели Open-Core одной компанией (например, Calico от Tigera, TruffleHog от Truffle Security, Teleport от Gravitational). Убедитесь, что требуемая функциональность доступна в бесплатной редакции.
- Лицензионные ограничения: проекты под лицензиями Apache-2.0 (Tracee, Polaris, Calico) или MIT (gitleaks) максимально либеральны. Однако продукты под лицензией AGPL-3.0 (TruffleHog, Zitadel, community-версия Teleport) накладывают обязательства по открытию исходного кода при предоставлении модифицированного сервиса через сеть.
Сфера специализированного управления ИИ-агентами (инспекция промптов, контроль вызовов MCP-инструментов) находится на стадии активного формирования. Среди наиболее перспективных открытых проектов, за которыми стоит следить:
- kagent (CNCF Sandbox) — фреймворк для декларативного запуска и управления ИИ-агентами прямо в Kubernetes.
- Envoy AI Gateway — специализированное расширение Envoy Gateway для аутентификации, лимитирования и безопасного маршрутизирования MCP-трафика к LLM-эндпоинтам.
- agentgateway (Linux Foundation) — policy-прокси для MCP и Agent2Agent вызовов с поддержкой авторизации на базе CEL-правил и трассировки OpenTelemetry.
- agentregistry — каталогизатор MCP-серверов и агентов с функциями автоматического сканирования окружения.
- Backstage — разработческий портал, в каталоге которого можно вести учет ИИ-агентов и MCP-серверов как стандартных системных компонентов.
Заключительные выводы
Shadow AI представляет собой естественный этап эволюции теневого IT, но с принципиальным отличием: ИИ-агенты умеют самостоятельно анализировать контекст, формировать команды и производить действия сразу в нескольких критических системах. Это делает их не только мощными катализаторами разработки, но и опасным вектором для утечки секретов, атак на цепочку поставок и сбоев в работе продакшена.
Вопрос заключается не в запрете использования ИИ инженерами, а в организации правильного управления. ИИ-агенты должны рассматриваться не как «умные утилиты», а как отдельный класс цифровых идентичностей с четкими границами прав, строгой изоляцией и непрерывным аудитом. Современный стек cloud-native open-source проектов дает все необходимые инструменты для безопасного внедрения ИИ на каждом этапе поставки ПО.
Источник: habr.com
