関連記事
Webページの「見えない文字」で任意コードを実行されるAWS Kiroの脆弱性が発覚 CVE未割り当てのため手動更新が必要

(Kiro.dev)[写真拡大]
AWSのエージェント型AI IDE「Kiro」において、Webページ上の隠しテキストを読み込ませるだけで設定ファイルを書き換えさせ、開発者のマシン上で任意のコードを実行させられる脆弱性が明らかになった。IntezerとKodem Securityが公開した本脆弱性はv0.11.130で修正されたが、CVE(共通脆弱性識別子)が割り当てられていないため、自動セキュリティスキャナーでは警告されない可能性がある。影響を受ける旧バージョン(v0.11.130未満)を利用している開発者は、速やかに手動でのアップデートを行う必要がある。
■承認ダイアログが形骸化していた技術的背景
Kiroの安全モデルは「Human in the loop(人間による承認)」という原則に基づいている。エージェントがシェルコマンドを実行したりファイルを編集したりする前に開発者へ承認ダイアログを表示し、それが攻撃とコード実行を隔てるセキュリティ境界となる設計であった。しかし、この仕組みは機能していなかった。
原因は承認が必要となる前にKiroが書き込みを許可していた権限にある。Kiroは接続を許可された外部ツールのリストと起動コマンドを「~/.kiro/settings/mcp.json」から読み込み、ファイル変更時に自動で再読み込みを行ってコマンドを実行する。研究時点では、KiroのfsWriteツールは承認ダイアログを一切挟まずにmcp.jsonへ書き込みを行うことが可能であった。
これにより、Kiroのコンテキストに命令を挿入できる攻撃者は、mcp.jsonに悪意のあるサーバー登録を行い、任意のコードを自動実行させることができた。Intezerの実証実験では、Webページ上に白地に白文字・1ピクセルサイズで隠された指示をKiroに読み込ませるだけで、数秒で設定ファイルが書き換わり、ホスト名やユーザー名を外部へ送信するノードコードが実行されることが確認された。Kiroが設定変更のポップアップを表示する場合もあったが、ダイアログのクリック結果にかかわらず設定は再読み込みされており、承認プロセスはブロックとして機能していなかった。
■過去1年間で3度目となる同様の攻撃パターン
今回の開示で重要なのは、脆弱性単体ではなくその再現パターンである。Kiroが公開された2025年7月にも、Embrace The RedのJohann Rehbergerがmcp.jsonや.vscode/settings.jsonの書き換えによるコード実行パスを指摘していた。AWSは2025年8月に「v0.1.42」をリリースして対応したが、確認プロンプトが追加されたのはSupervisedモードのみで、デフォルトのAutopilotモードでは自動書き込みが継続していた。この際もCVEは割り当てられていない。
その後、Cymulateによって.vscode/tasks.jsonの書き込みによる自動実行の経路(CVE-2026-10591、CVSS 3.1スコア8.8)が発見され、v0.11シリーズで修正された。そして2026年2月に報告されたIntezerによる今回の事例を含め、約12か月の間に3つの独立した研究チームが「エージェントが自身の実行権限を制御する設定ファイルを書き換える」という同一の攻撃手法を特定する結果となった。
■プロンプトインジェクションがモデルレベルの安全制御を無効化する構造
本脆弱性が示す本質的な教訓はアーキテクチャにあり、すべてのエージェント型IDEに共通する問題である。プロンプトインジェクションは、モデルが読み込むデータ内に命令を埋め込み、それをユーザーからの指示と誤認させる攻撃手法である。OWASP LLM Top 10が指摘するように、大規模言語モデル(LLM)には同一コンテキスト内のデータと命令を確実に区別する仕組みが存在しないため、どのようなフィルターやガードレールもこれを完全に排除できていない。
セキュリティ研究者のSimon Willisonは2025年6月、「信頼できないデータの読み込み」「プライベート情報へのアクセス」「外部通信能力」の3要素を備えたエージェントは構造的にプロンプトインジェクションを免れないと指摘した。OWASP GenAI Security Projectの2026年6月のレポートでも、プロンプトインジェクションは将来のアップデートで修復できるバグではなく、構造的な欠陥である可能性が高いと結論づけている。
有効な対策は、モデルの判断ではなくプラットフォーム層で制御を行うことである。Intezerの開示後、Kiroはmcp.jsonや.gitディレクトリエリアなどを「保護されたパス(protected paths)」に指定し、モードを問わずプラットフォームレベルで書き込み時の明示的な開発者承認を必須とした。Kiroの公式ドキュメントも「Supervisedモードはコードレビューのワークフローであり、セキュリティ制御ではない」と明記している。
■業界全体に広がる「IDEsaster」の脅威
Kiroの事例は業界全体の傾向の一部に過ぎない。2025年12月には研究者のAri Marzoukが、Cursor、Windsurf、GitHub Copilot、Zed、Roo Code、Kiroなど複数のAIコーディングツールに及ぶ30以上の欠陥を一覧化した。エージェントが外部ソースからコンテンツを取り込む際、編集機能(Webアクセス、ファイル書き込み、シェル実行)がそのまま攻撃ベクターとなる。これらは「IDEsaster」と呼ばれ、特定の製品のバグではなくエージェント型IDE共通の課題として認知されている。
MicrosoftのDefender Security Research TeamやGitHub Copilot CLIも2026年にかけて同様の設定信頼性の脆弱性に対処しており、業界全体で対策が進められている。
■開発者が直ちに講じるべき対策
v0.11.130未満のKiroを実行している開発者は、直ちに最新版(2026年7月時点でv1.0.165など)へ手動更新を行う必要がある。本脆弱性にはCVEが割り当てられておらず、AWSからの影響バージョン一覧も出されていないため、自動脆弱性スキャナーでは検出されない。
また、すべてのエージェント型IDEにおいて、以下の運用が推奨される。1. エージェントが取得するすべての外部URLを潜在的な敵対的データとして扱うこと。2. Web検索やドキュメント参照を行ったセッション後はMCP設定ファイル(mcp.json)を確認すること。3. 単なるダイアログ承認に頼らず、プラットフォームレベルでの保護パス(protected paths)の強制機能を適用すること。
■脆弱性開示のタイムライン
2026年2月11日:IntezerがHackerOne経由でAWSに脆弱性を報告。
2026年2月12日〜28日:HackerOneトリアージチームとのやり取り。
2026年3月6日:AWSのCoordinated Vulnerability Disclosureチームへチケットを移管。
2026年4月3日:AWSが最新リリースでの修正完了を確認(具体的なバージョンは未特定)。
2026年7月21日:IntezerとKodem Securityが調査結果を公表。研究者自身がv0.11.130での修正を確認。
■注目ポイントQ&A
●Kiroのmcp.jsonプロンプトインジェクション脆弱性とは何ですか?自分のマシンも危険ですか?
Kiroが読み込んだWebページに含まれる隠し命令により、外部ツール設定ファイル(~/.kiro/settings/mcp.json)に悪意のある記述が書き込まれ、開発者権限で任意のコードが自動実行される脆弱性です。v0.11.130未満のKiroで外部URLやドキュメントを読み込ませたことがある場合、リスクが存在します。最新のv1.0.xリリースへ即座に更新してください。
●この脆弱性にCVEが割り当てられていないことは何を意味しますか?
CVEが割り当てられていない場合、NVD(米国国立標準技術研究所の脆弱性データベース)に登録されないため、開発チームが使用する自動脆弱性スキャナーで検知されません。AWSは影響を受けるバージョン一覧を公表しておらず、通知も届かないため、開発者が手動で更新を確認・適用する必要があります。
●なぜKiroの承認ダイアログはこの攻撃を防げなかったのですか?
承認ダイアログはMCP設定がリロードされた後、または効果のないタイミングで表示されており、操作をブロックするものではありませんでした。また、開発者が承認した操作は「URLの取得」のみであり、その後に設定ファイルが書き換えられてコードが実行されるプロセスは独立した承認ステップとして提示されなかったためです。
●この問題は他のAIコーディングツールにも影響しますか?
はい。信頼できないコンテンツを読み込み、設定ファイルを書き換え、シェルコマンドを実行するエージェント型AIツール全般に共通する構造的な脆弱性です。Cursor、GitHub Copilot、Windsurf、Zedなど複数のツールで同種の攻撃経路(IDEsaster)が報告されています。
元記事: Hidden Web Text Hijacked Kiro and Ran Attacker Code: AWS Confirms No CVE Assigned
※この記事はTech Timesから提供を受けた記事を日本向けに翻訳・編集したものです。
スポンサードリンク

