Amazon Bedrock AgentCoreで新たに公開された攻撃チェーンにより、公開状態のAIエージェントとチャットできる攻撃者が、一時的なクラウド認証情報を窃取し、同じAWSアカウント・リージョン内の他のエージェントまで侵害できることが明らかになりました。
「AgentCorruption」と名付けられたこの調査は、プロンプトインジェクション、メタデータへのアクセス、そして過剰な実行ロール権限を組み合わせた攻撃を実証しています。
AgentCoreは、コンテナ化されたエージェントをFirecracker microVM内で実行します。研究者らは、HTTPツールやシェルツールを備えたエージェントが、悪意あるプロンプトによって169.254.169.254のメタデータエンドポイントへアクセスするよう仕向けられることを示しました。
このサーバーサイドリクエストフォージェリ(SSRF)により、エージェントの実行ロールに紐づく認証情報が露出しました。返されたのは、アクセスキーID、シークレットアクセスキー、セッショントークンです。
研究者らはこれらを別のマシンに持ち出し、以降のリクエストをAWSが、侵害されたエージェントの引き受けたロールからのものとして認識することを確認しました。そのため、その後の攻撃はエージェントとのやり取りを続けることなく、正規のAWS APIを使って実行できました。
Zenityが調べた実行ロールは、侵害されたエージェントだけに限定されていませんでした。その権限はアカウント・リージョン内のAgentCoreリソース全体に及んでおり、認証情報の窃取がより広範な侵害へと拡大しました。
研究者らはlogs:DescribeLogGroupsを使い、CloudWatchのログ名からエージェントの識別子を割り出しました。さらに、Elastic Container Registryに対する広範な権限を利用して、他のエージェントのコンテナイメージを取得し、アプリケーションコードを調べることができました。
bedrock-agentcore:InvokeAgentRuntime権限により、攻撃者が本来到達できない内部エージェントの呼び出しも可能でした。メモリ関連の権限も被害をさらに拡大させました。
ListActorsとListSessionsでユーザーやセッションが判明し、ListEventsでは保存された会話内容が露出しました。CreateEventとDeleteEventにより、攻撃者は会話履歴を改ざんできます。これにより、エージェントの判断を変えたり、状況を示す証拠を消したりする可能性があります。
提供された概要では、長期メモリを有効にしたエージェントに対する永続的なメモリポイズニングについても説明されています。攻撃者はイベントを注入し、将来のセッションに影響を与えることができます。
bedrock-agentcore:GetResourceApiKeyやsecretsmanager:GetSecretValueなどの権限からも、連携ツールや外部サービス向けの認証情報が露出しました。Zenityの開示タイムラインによると、メタデータに関する最初の報告は2025年12月25日に提出されました。
その後AWSは、新たにデプロイされたエージェントが2026年2月14日からIMDSv2を使用していると報告しました。研究者らは、9月29日のレビューで、デフォルトの実行ロールに大幅な制限が加えられていることを確認しています。
AWSは、メタデータ経由での実行ロール認証情報へのアクセスについて、想定外の機能ではなく、ドキュメントに記載された想定どおりの動作だとしています。同社のドキュメントは、ネットワークモードにかかわらず、microVM内のあらゆるコードや主体がこれらの認証情報を取得できると警告しています。
この違いは重要です。メタデータへのアクセスだけで、無制限のクラウド侵害が成立するわけではありません。今回実証された被害の範囲は、窃取されたアイデンティティに付与された権限によって左右されました。
AWSは、実行ロールを最小権限とし、関連するエージェントの呼び出しを許可されたユーザーよりも強力なロールを使わないよう推奨しています。
脅威調査の効率化と手作業の削減のため、1万6,000以上のSOCチームがANY.RUNを導入しています。 チームで試してみる
翻訳元: https://cyberpress.org/aws-bedrock-agentcore-flaw-2/