コンテンツにスキップするには Enter キーを押してください

ハッカーはAmazon Q Developer VS Code拡張機能にゴーストコマンドを忍び込ませることができる

この拡張機能は、人間には見えないがAIには認識される特殊な記号「不可視Unicodeタグ文字」に騙される可能性がある。

Amazon Q Developer VS Code拡張機能は、不可視Unicodeタグ文字を使ったステルス型プロンプトインジェクション攻撃に対して脆弱であると報告されています。

「Embrace The Red」ブログの著者によると、Amazon Qによって動作するVisual Studio Code向けの開発者向け拡張機能は、攻撃者が一見無害なテキスト内に(不可視文字を使って)悪意のある命令を埋め込み、実行させることができるとのことです。

「Amazon Q Developerは不可視Unicodeタグ文字をサニタイズできていません」と著者はブログで述べています。「これらの文字は一見無害なテキストに埋め込むことができ、処理時に隠された挙動を引き起こします。」

不可視Unicodeタグ文字は、通常は目立たないテキストタグ付けに使われる特殊な記号で、画面上には表示されませんが、コンピュータによって処理されるため、命令をこっそり隠す巧妙な手段となります。

開発者には見えない不可視Unicodeタグ文字はAIには認識されるため、攻撃者はプロンプト内に隠された命令を密かに持ち込むことができます。

ブログ内で実証された概念実証(POC)では、攻撃者がこれらのタグをVS Code上に現れるファイルに埋め込み、Amazon Qに隠された指示を実行させることに成功しています。これには、以前説明された脆弱性を利用した任意コード実行も含まれます。

不可視インジェクションと「find -exec」などの従来のエクスプロイトを組み合わせることで、強力な脅威ベクトルとなります。この脆弱性は、著者が公式のバグバウンティの窓口がないことを確認した後、GitHubで見つけたメールアドレスに報告し、7月5日にAWSへ開示されました。

AmazonのAI製品が当初は対象外だったため、やりとりに遅れが生じましたが、最終的にはこの問題がHackerOneの脆弱性開示プログラムに受理されたとブログで述べられています。

モデル作成者はこの欠陥を修正しない

この問題は、Amazon Qの基盤となっているAnthropicのClaudeから引き継がれたものであり、Anthropicはこれを修正しない方針のようです。「Anthropicのモデルは不可視Unicodeタグ文字を命令として解釈することで知られています」と著者は述べています。「私の知る限り、Anthropicはこれを修正するつもりはありません。彼らの対応についてはこの投稿を参照してください。」

Anthropicはプロンプトインジェクションの脆弱性について修正を拒否したとされ、「ご報告を確認しましたが、セキュリティ上の影響は特定できませんでした。そのため、該当なしとマークしました」と述べています。AnthropicはCSOからのコメント要請にはすぐには応じませんでした。

「WunderWuzzi」という別名でブログを執筆している著者は、Claudeを基盤とするAmazon Qを含む開発者は、自らこれらの攻撃をブロックする必要があると指摘しています。ほとんどのモデルはいまだに不可視プロンプトインジェクションを解析していますが、OpenAIだけはモデルやAPIのレイヤーでこの問題に直接対処しています。

2025年8月8日までに、AWSはこの脆弱性が解決されたと報告したと、著者はブログで述べています。ただし「公開アドバイザリやCVEは発行されない」ため、ユーザーは安全のためAmazon Q Developerの最新版を利用していることを確認する必要があります。

AWSもまた、CSOからのコメント要請にはすぐには応じませんでした。

Amazon Q Developer VS Code拡張機能は100万回以上ダウンロードされており、攻撃者から大きな注目を集めています。先月も、攻撃者が破壊的なコードをこのツールに挿入し、それが公式アップデートを通じて配布される事件がありました。

ニュースレターを購読する

編集部からあなたの受信箱へ

下記にメールアドレスを入力してご登録ください。

翻訳元: https://www.csoonline.com/article/4043693/hackers-can-slip-ghost-commands-into-the-amazon-q-developer-vs-code-extension.html

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です