Одного промпта оказалось достаточно, чтобы захватить контроль над всеми ИИ-агентами в аккаунте AWS, выяснили исследователи Zenity
Ключевые моменты
- Цепочка уязвимостей в платформе Amazon Bedrock AgentCore позволила исследователям захватить всех ИИ-агентов компании в одном регионе AWS через одно-единственное чат-сообщение, отправленное одному публичному агенту.
- У агентов отсутствовала надлежащая изоляция, и по запросу они передавали внутренние учетные данные AWS. Поскольку платформа по умолчанию предоставляла широкие разрешения для всего региона, исследователи могли получать доступ к исходному коду, паролям, личным разговорам и долговременной памяти других агентов и изменять их.
- AWS частично устранила проблему, усложнив новым агентам получение внутренних метаданных и ужесточив роль выполнения по умолчанию. Исследователи по-прежнему рекомендуют компаниям вручную назначать своим ИИ-агентам более строгие роли с минимальными правами доступа.
Исследователи из Zenity Labs заявляют, что одного общедоступного ИИ-агента на Amazon Bedrock AgentCore оказалось достаточно, чтобы захватить всех агентов AgentCore в том же аккаунте и регионе AWS.
Amazon Bedrock AgentCore — это платформа AWS для запуска корпоративных ИИ-агентов с инструментами, памятью и управлением доступом. Компания по кибербезопасности Zenity Labs обнаружила цепочку уязвимостей, которую исследователи назвали «AgentCorruption».
Злоумышленнику требовался лишь доступ к чату одного общедоступного агента. После этого, как утверждают исследователи, с помощью одного промпта они захватили всех агентов AgentCore в том же аккаунте и регионе AWS. Они могли читать личные разговоры, скачивать исходный код и извлекать сохраненные учетные данные. По данным Zenity, проблема носила системный характер и затрагивала агентов со встроенными инструментами во всех аккаунтах AWS.
Агент передал собственные учетные данные
Атака начинается с хорошо известной проблемы облачных сервисов. AWS запускает сервис метаданных экземпляра по внутреннему адресу 169.254.169.254, который предоставляет временные учетные данные, используемые экземпляром или рабочей нагрузкой для аутентификации в AWS. Любой, кто перехватит эти учетные данные, может выдать себя за этот экземпляр.
В норме ИИ-агент не должен иметь доступа к этому сервису. Но, согласно технической публикации Zenity, в AgentCore отсутствовала надлежащая изоляция. Исследователи создали тестового агента с использованием Strands — разработанного AWS фреймворка с открытым исходным кодом, который поставляется с веб-инструментом. Они попросили агента обычным языком обратиться к сервису метаданных и отправить результаты на внешний сервер. Агент подчинился. «Границы песочницы, с которыми мы должны были бороться, попросту не существовало», — пишут исследователи.

Похищенные учетные данные работали за пределами платформы на собственном компьютере исследователей, и с этого момента агент им больше не требовался. Сервис метаданных также раскрыл другую конфиденциальную информацию, включая сертификат и ключ для внутреннего сервиса AWS, а также предварительно подписанный URL, указывающий на внутренний бакет S3, который не принадлежал аккаунту исследователей.

По данным Zenity, отказ от веб-инструмента не помог бы. Атака столь же успешно работала через инструмент командной строки, поскольку уязвимость находилась в самой платформе.
Роль по умолчанию, действовавшая как мастер-ключ
Наибольший ущерб был связан с разрешениями, которые AgentCore по умолчанию назначал каждому агенту. Согласно Zenity, они не ограничивались одним агентом, а распространялись на всех агентов в регионе, включая права на чтение, запись и удаление — вплоть до разрушительных действий.

Благодаря этим разрешениям исследователи могли перечислить всех агентов, за считанные секунды скачать их пакеты с кодом и вызвать каждого из них по отдельности. В этих пакетах наряду с исходным кодом часто содержатся забытые пароли или ключи API. Например, злоумышленник мог перейти от общедоступного агента клиентской поддержки к внутреннему финансовому агенту и получить доступ к его данным. Все личные разговоры между пользователями и агентами также можно было прочитать.

Для агентов с включенной долговременной памятью исследователи могли напрямую изменять эту память. Согласно их публикации о заражении памяти, они добавили инструкции, заставлявшие агентов пересылать будущие разговоры на внешний адрес. Пользователи продолжали бы общаться с тем, что выглядело как надежный агент, не замечая ничего подозрительного.
Механизмы защиты паролей и ключей API также не сработали. AWS рекомендует хранить учетные данные отдельно от агентов в защищенном хранилище, однако разрешения по умолчанию позволяли напрямую обращаться к этому хранилищу, согласно публикации Zenity о краже учетных данных. Это включало ключи для сервисов за пределами AWS.
AWS устраняет пробелы
Zenity сообщает, что 25 декабря 2025 года передала AWS результаты исследования AgentCore. После этого AWS сделала IMDSv2 стандартным вариантом для развертываний AgentCore. IMDS — это сервис метаданных экземпляра, внутренний облачный сервис AWS, который рабочие нагрузки используют для получения информации о среде выполнения и временных учетных данных; именно он был первым звеном атаки Zenity. IMDSv2 — более безопасная версия, и теперь новые развернутые агенты запускаются с ней по умолчанию. Zenity продает собственную платформу безопасности для ИИ-агентов, поэтому компания заинтересована в поиске уязвимостей в этой области.
Другой проблемой была чрезмерно широкая роль выполнения AgentCore по умолчанию. Согласно обновленной информации Zenity, AWS изменила эту роль примерно в августе. В обновленной версии больше нет разрешений, позволявших агентам вызывать других агентов, читать личные разговоры или извлекать учетные данные из AWS Secrets Manager; другие разрешения также были существенно ужесточены. Исследователи по-прежнему рекомендуют компаниям создавать собственные, более узкие роли для своих агентов. Дополнительные сведения приведены в их анализе роли по умолчанию.
Технический директор Zenity Майкл Баргури видит фундаментальное противоречие. «Безопасность облака строится на сегментации и доступе с минимальными привилегиями. Однако ИИ-агентам нужно пространство для творчества, чтобы быть полезными», — сказал он. С таким компромиссом сталкивается каждая компания, запускающая агентов в облаке. Поскольку общедоступные и внутренние агенты часто используют одну и ту же среду, одна уязвимость может разрушить границы всей системы.
Агенты все чаще обращаются против своих владельцев
Уязвимость AgentCore вписывается в серию находок Zenity, объединенных схожей закономерностью: безобидный на вид ввод заставляет агента обратиться против собственной организации. Под названием AgentFlayer исследователи использовали атаки без клика, чтобы заставить Salesforce Einstein, Copilot Studio и Cursor перенаправлять данные клиентов или раскрывать учетные данные. В случае с AgentForger одной измененной ссылки ChatGPT оказалось достаточно, чтобы создать автономного агента внутри OpenAI Workspace Agents с отключенными требованиями одобрения.
Сравнение складывается не в пользу AWS. OpenAI закрыла свою уязвимость за четыре дня, тогда как чрезмерно широкие разрешения AgentCore по умолчанию сохранялись на протяжении нескольких месяцев после сообщения Zenity. Это затрагивает платформу, которую AWS открыла для всех предприятий и которую, по словам Amazon, используют, среди прочих, Sony и Ericsson.
Превращение памяти агента в вектор атаки согласуется с выводами исследовательского сообщества. Google DeepMind выделяет манипуляцию долговременной памятью в отдельный класс атак в своей таксономии «ловушек для ИИ-агентов». Всего нескольких зараженных документов в базе знаний может оказаться достаточно, чтобы целенаправленно исказить ответы. В исследовании по красной команде «Agents of Chaos» агент OpenClaw удаленно контролировался через доступный для внешнего редактирования документ, связанный с его файлом памяти, а другой агент передал банковские реквизиты без редактирования. Генеральный директор OpenAI Сэм Альтман сам сформулировал очевидную контрмеру, заявив, что агенты должны получать только минимально необходимый доступ. По данным Zenity, роль AgentCore по умолчанию нарушала именно этот принцип.
Новости ИИ без шумихи — отобраны людьми
Подпишитесь на THE DECODER, чтобы читать материалы без рекламы, получать еженедельную рассылку об ИИ, эксклюзивный передовой отчет «AI Radar» шесть раз в год, полный доступ к архиву и доступ к разделу комментариев.
Переведено автоматически с английского. Оригинал статьи — по ссылке ниже.