Naor Haziz氏の発見により、EC2ベースのECSタスク上で侵害されたコンテナが、ホストへのアクセスなしにECSエージェントになりすまし、他のタスクからIAM認証情報を盗み出せることが明らかになりました。
Black Hat USA 2025にて、Sweet SecurityのNaor Haziz氏は、Amazon ECSにおける重大な権限昇格の脆弱性を明らかにしました。この脆弱性により、EC2ベースのタスク上で動作する低権限のコンテナが、同一ホスト上の他のコンテナからより高い権限のIAMロールを奪取できてしまいます。
「ECScape」と名付けられたこの脆弱性は、ECS内部の認証情報配布の仕組みに起因します。ECSコントロールプレーンは、タスクのIAM認証情報を未公開の内部WebSocketプロトコルであるAgent Communication Service(ACS)を通じて配布しており、コンテナ攻撃者はまずInstance Metadata Service(IMDS)からEC2インスタンスロールの認証情報を取得することで、この通信を傍受できます。
「実際には、ECSクラスター内で侵害されたアプリが、同じインスタンス上で動作している限り、より高い権限のタスクのロールを認証情報を盗むことで引き受けることができるということです」とHaziz氏はブログ投稿で述べ、さらにこの脆弱性によりタスク実行ロールも露出し、これが侵害された場合、シークレットやアーティファクトの抽出に悪用される可能性があると付け加えました。
Haziz氏は当初、ECSワークロード向けのeBPFベースのリアルタイム監視ツールの開発を目指していました。その過程で、デバッグの一環としてECSエージェントとAWSバックエンド間の通信を傍受した際、未公開のWebSocketチャネルに気付きました。
低権限タスクから特権IAMロールへ
IMDSがデフォルトで利用可能なため、EC2ベースのECSインスタンス上のどのコンテナ(低レベルアクセスでも)が、ECSエージェント向けのインスタンスロール認証情報を読み取ることができます。
「コンテナ脱出(ホストrootアクセス)は不要でした。ただし、IMDSへのアクセスには、コンテナ自身の名前空間内から巧妙なネットワークやシステムのトリックが必要でした」とHaziz氏は指摘し、IMDSへのアクセスが可能になると、どのコンテナでもECSエージェントになりすませると述べています。AWSはIMDSへのアクセスを防止・制限する方法についてドキュメントを公開しています。
これらのインスタンスロール認証情報を手に入れた攻撃者は、ACS WebSocketを介して通信を偽装できます。これにより、他の実行中タスクのIAM認証情報を傍受・要求できるようになり、たとえそれらのタスクがIAMロールで分離されていても影響を受けます。つまり、侵害されたコンテナが、タスクの管理・オーケストレーションを担うECSエージェントになりすますことで権限を昇格させるのです。
「盗まれたキー(IAM認証情報)は、本物のタスクのキーと全く同じように機能します」とHaziz氏は述べています。「AWS CloudTrailはAPIコールを被害タスクのロールに帰属させるため、初期検知は困難です。あたかも被害タスク自身が操作しているように見えるのです。」このため、攻撃者はログ上で不可視となり、AWS側は被害者が全ての操作を行っていると認識します。
Fargateは比較的安全
Amazonの設計では、セキュリティ境界はコンテナではなくEC2ホストにあります。異なるIAMロールを持つ複数のタスクが同じEC2を共有している場合、ECScapeによる横方向の権限昇格リスクが高まります。AWSはCSOからのコメント要請に対し、現時点で回答していません。
Sweet Securityは、信頼性の低いタスクからのIMDSアクセスを無効化または制限してインスタンス認証情報の取得を防ぐこと、低権限・高権限タスクを同じEC2インスタンス上で共存させないこと、より高いタスク分離を提供するAWS Fargateへの移行などの対策を推奨しています。
「AWS Fargateタスクは他のタスクと基盤となるホストを共有しません。各Fargateタスクは独自のマイクロVM上で動作し、独立したIMDSとECSエージェントを持ちます」とHaziz氏は説明します。「ECScapeはFargateには該当しません。なぜならインスタンスの共有がないからです。」
ECScapeにはCVE IDが申請されており、Sweet Securityはこの脆弱性の概念実証(PoC)コードをGitHubで公開しています。Haziz氏はまた、ECScapeのライブデモも共有し、未対策のインスタンスではユーザー側の設定ミスが不要であると述べています。「ECS on EC2のすべてのデフォルト動作と設定だけで、この攻撃は成立します」と彼は付け加えました。
ニュースレターを購読する
編集部からあなたの受信箱へ
下記にメールアドレスを入力してご登録ください。