ИИ-агент получил доступ к коду и инфраструктуре: что может пойти не так. Рассказывает директор Яндекса

281
ИИ-агент получил доступ к коду и инфраструктуре: что может пойти не так. Рассказывает директор Яндекса

Как защитить инфраструктуру от ИИ-агента

ИИ-агенты уже пишут код, проверяют pull request, обращаются к API и работают с внутренними данными. Чем больше самостоятельности получает такой помощник, тем дороже становится ошибка: недоверенный текст может превратиться в команду, а подключённый инструмент — открыть путь к корпоративной инфраструктуре.

20 августа на бесплатном онлайн-эфире CyberED практики из Яндекса и Сбера разберут эти риски на реальных кейсах и ответят на вопросы участников.

О том, что меняется в безопасной разработке, рассказывает Денис Макрушин — директор по продуктам безопасной разработки в Яндексе. Он больше 15 лет создаёт технологии защиты от киберугроз, работал исследователем в Kaspersky GReAT, руководил технологическим центром Huawei и технологической стратегией кибербезопасности в МТС. Сейчас Макрушин создаёт платформу SourceCraft и исследует применение ИИ для поиска и исправления уязвимостей.

Когда текст становится командой

Обычное приложение получает входные данные и обрабатывает их по заранее заданной логике. Агент устроен иначе: он интерпретирует текст, принимает решения и вызывает инструменты. Поэтому граница между данными и инструкциями становится менее очевидной.

Опасный запрос необязательно приходит прямо от злоумышленника в чате. Он может находиться в тикете, комментарии, тексте коммита или pull request. Агент прочитает рабочий артефакт как контекст, распознает внедрённую инструкцию и попробует выполнить её с теми правами, которые ему выдали.

«Возможность внедрения вредоносных инструкций в текст коммитов, тикетов или пулл-реквестов может заставить агента выполнить привилегированные команды в процессах сборки кода», — объясняет Денис Макрушин.

Сценарий становится особенно опасным, если агент подключён к CI/CD, репозиторию или внутренним сервисам. Ошибка уже не ограничивается неудачным ответом модели: она превращается в действие внутри реальной системы. На онлайн-эфире о безопасности ИИ-агентов этот риск разберут на примере prompt injection через pull request и покажут, что нужно проверить в собственной инфраструктуре.

MCP даёт агенту руки

Чтобы агент мог не только отвечать, но и действовать, его подключают к внешним инструментам через MCP — Model Context Protocol. Так он получает возможность читать логи, работать с базами данных, обращаться к API, назначать встречи или менять код.

«MCP-сервер — это руки агента, которыми он меняет состояние внешних систем», — говорит Макрушин. Чем шире набор доступных инструментов, тем серьёзнее последствия неправильного решения, скомпрометированного контекста или ошибки конфигурации.

Во время исследования безопасности ИИ-агентов Денис Макрушин искал доступные из интернета MCP-серверы. После дедупликации результатов он получил 1699 уникальных серверов. Для оценки риска использовались пять признаков: отсутствие аутентификации, отсутствие шифрования соединения, отсутствие CORS-заголовков, наличие потенциально опасных инструментов вроде exec и возможность получить список инструментов и ресурсов.

Незащищённый сервер позволяет злоумышленнику попытаться выдать себя за легитимного агента, узнать его возможности и вызвать доступный инструмент. Поэтому проверять нужно не только саму модель, но и каждую точку, через которую она воздействует на инфраструктуру. Разобраться, как устроены атаки через MCP и где ограничивать права агента, можно на открытом разборе с Денисом Макрушиным и Глебом Михеевым.

Почему pull request больше не контрольная точка

Классический Secure SDLC строится вокруг предсказуемого процесса: разработчик меняет код, изменение проходит проверку, затем попадает в сборку и эксплуатацию. Автономный агент способен сам прочитать задачу, предложить или внести изменение и вызвать связанные инструменты. При этом его поведение может измениться без изменения программного кода.

«Pull request — больше не чекпоинт, когда агент автономно читает тикеты, обрабатывает изменения и что-то меняет в коде. Наблюдаемость упала, скорость выросла», — формулирует Макрушин.

Так Secure SDLC постепенно превращается в ADLC — Agentic Development Lifecycle. Контролировать приходится не только код и зависимости, но также контекст агента, его решения, вызовы инструментов и действия после внедрения.

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

Что проверять до подключения агента

Начать можно с пяти практических вопросов.

  • Какие данные агент способен читать и какие из них могут содержать недоверенные инструкции?
  • Какие действия он может выполнить через MCP и действительно ли каждое из них необходимо?
  • Можно ли восстановить последовательность решений и вызовов инструментов после инцидента?
  • Проверяются ли входные и выходные данные с помощью guardrails?
  • Включены ли атаки на агента и MCP-компоненты в проверки CI/CD?

Сам доступ тоже не должен быть постоянным и безусловным. «Если агент не ведает, что творит, то бить по рукам — не давать доступы», — резюмирует Макрушин. Практически это означает минимальные права, аутентификацию, TLS, ограниченный список инструментов, мониторинг их вызовов и возможность остановить опасное действие.

Дополнить эти меры можно LLM-as-a-Judge, guardrails на входе и выходе, AI red teaming в CI/CD и аудитом каждого подключённого MCP-сервера. Но отдельные средства не заменяют общей модели угроз: команде нужно понимать, где агент появляется в инфраструктуре, какие решения принимает и кто отвечает за контроль его действий.

Разобрать свою модель угроз за один вечер

20 августа в 19:00 МСК CyberED проведёт бесплатный онлайн-эфир «Разбираемся в безопасности ИИ-агентов за один вечер». Это будет 90-минутный разговор двух практиков с разбором свежих инцидентов и ответами на вопросы участников, а не обычный доклад по слайдам.

Денис Макрушин представит взгляд специалиста, который отвечает за безопасную разработку и исследует слабые места ИИ-агентов. Глеб Михеев, технический директор направления генеративного ИИ в Сбере, покажет сторону команд, которые создают агентные продукты и мультиагентные системы.

На эфире разберут модель угроз ИИ-агента, prompt injection через pull request, утечки и уязвимости MCP, переход от Secure SDLC к ADLC, runtime-контроль и навыки, необходимые командам в агентной разработке. Каждый кейс завершат практическим выводом — что проверить у себя. Участники смогут задать экспертам собственные вопросы прямо во время трансляции.

Зарегистрироваться на бесплатный онлайн-эфир 20 августа. Начало в 19:00 МСК, подключиться можно из любой точки.

AI Security DevSecOps MCP безопасная разработка ИИ-агенты
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
SECLAB / TG
LIVE SecurityLab.ru
Вы зашли хитро.
Дальше — совсем просто.
Одна кнопка — и SecurityLab в вашей ленте. Новости про взломы без лишних маршрутов.
Подписаться @SecLabnews

CyberEd

Кибербезопасность – наш ключевой фокус. Мы накопили огромную экспертизу и умеем решать задачи любого уровня сложности