BragJackが悪意ある拡張機能を通じてAIブラウザエージェントを乗っ取る

Forever Securityのセキュリティ研究者Gal Weizman氏は、単一の悪意ある拡張機能を使って主要ブラウザに組み込まれたAIアシスタントを乗っ取る新たな攻撃手法を公表しました。

「BragJack」と名付けられたこの概念実証は、Chromiumベースの5つのブラウザまたはブラウザアシスタント、すなわちGoogle ChromeのGemini Live、Perplexity Comet、Microsoft Edge、Opera Neon、AnthropicのClaude in Chromeに対して実証されました。

今回の研究では5社のベンダーからバグ報奨金として合計2万ドル以上(1件あたり600ドルから7,000ドル)が支払われ、CVE2件が発行されています。

この攻撃が成立するには、悪意ある拡張機能が被害者のブラウザにあらかじめインストールされている必要があります。

インストールされてさえいれば、ユーザーの操作なしに悪用が実行可能であることを研究者は示しています。これにより、拡張機能がAIブラウザエージェントを制御し、そのエージェントが持つ既存の権限を悪用して機密情報にアクセスしたり、被害者に代わって行動を起こしたりできてしまいます。

GoogleとMicrosoftはいずれも、割り当てられた脆弱性をすでに修正済みです。

信頼済みのブラウザコンポーネントを悪用

この攻撃は、AIアシスタントがブラウザにますます深く組み込まれ、ブラウザレベルの権限を与えられるようになっている現状を突いたものです。

Weizman氏は自身のレポートの中で、こうしたシステムには「頭脳」と「身体」があると説明しています。AIモデルが指示を処理し、何を行うべきかを判断します。

その後、権限を持つブラウザコンポーネントが実際の動作、たとえばタブへのアクセス、コンテンツの読み取り、スクリーンショットの取得、Webサイトとのやり取りなどを実行します。

研究者によれば問題は、ブラウザ拡張機能がこうした権限コンポーネントの信頼するWebトラフィックやページを操作できてしまう点にあります。

今回の5つの標的すべてに対して同一の拡張機能が使われ、ChromiumのdeclarativeNetRequest(DNR)機能が利用されました。DNRを使うと、拡張機能はレスポンスヘッダーの変更やリソースのリダイレクトなど、ネットワークリクエストの処理方法を変更できます。

Chromeに対する攻撃では、拡張機能が権限を持つchrome://glicコンポーネントを直接操作したり、GoogleのGeminiサイトにスクリプトを注入したりすることはブロックされているものの、埋め込まれたGeminiのWebアプリが発するリクエストをDNRルールで依然として傍受できることをWeizman氏は発見しました。

セキュリティヘッダーを弱め、JavaScriptリソースをリダイレクトすることで、同氏はGeminiのコンテキスト内でコードを実行し、Geminiの通常のリクエストフローを経由せずにChromeの権限を持つAIコンポーネントと直接通信することに成功しました。

Weizman氏によると、こうして得られたアクセス権限によりローカルファイルの読み取り、Webコンテンツへのアクセス、スクリーンショットの取得、さらには場合によってはブラウザのカメラやマイクへのアクセスまで可能になるといいます。Chromeはこの発見にCVE-2026-0628を割り当て、7,000ドルの報奨金を支払いました。

データの読み取りからAIエージェントの制御へ

Perplexity CometやOpera Neonのようなエージェント型ブラウザに対する攻撃はさらに一歩進んでいます。これらのエージェントは、単にWebサイトを読み取るだけでなく、Webサイト上で操作を実行できるためです。

Cometについては、ブラウザ組み込みのエージェント拡張機能が複数のPerplexityドメインを信頼しており、その中には主要サイトであるperplexity.aiと同等の保護を受けていないテストドメインが含まれていることをWeizman氏は突き止めました。DNRを使ってそのドメインへのリダイレクトを取り除くことで同氏はそのドメインを読み込み、組み込みエージェントと通信可能なコンテンツスクリプトを注入しました。

これにより得られたアクセス権限には、閲覧履歴、スクリーンショット、ローカルファイル、さらにはエージェントへの指示送信能力までが含まれていました。Weizman氏はエージェントに対し、Perplexityへアクセスさせ、被害者のメールを要約させ、その結果を別のアドレスへ送信させることに実際に成功しています。

Microsoft Edgeでは異なる課題がありました。Microsoftは、任意の指示と実行を同時に受け付けないよう、エージェントを「Think」モードと「Do」モードに分割していました。

Weizman氏は、プロンプトを強制的に発生させている間だけこの制限を一時的に無効化し、エージェントが状態を確認する前に実行能力を再度有効化してしまう競合状態(レースコンディション)を発見しました。MicrosoftはこのレースコンディションにCVE-2026-55945を割り当てています。

同様の脆弱性はOpera NeonおよびClaude in Chromeに対しても実証されました。ただし後者はブラウザそのものではなく、ブラウザ拡張機能である点が異なります。

今年前半、私はManifold Securityでの業務の中で、Claude for Chromeに関連する脆弱性を報告しました。この拡張機能は、実際のユーザーからの操作であるかを検証しないまま合成クリックに基づいて組み込みのAIワークフローを実行しており、指摘したコードは8回のリリースを経てもなお再現可能な状態でした。

これは、LayerXが4月に公表した同じ拡張機能の以前の脆弱性であるClaudeBleedに続くものです。この脆弱性では、Claude for Chromeが実際にどのスクリプトが自身を操作しているかを確認せず、claude.aiというオリジンそのものを信頼してしまっていました。

「Prompt Forcing」

Weizman氏は、これらのエージェントを乗っ取るために用いた手法を「Prompt Forcing」と呼んでいます。

攻撃者がAIが既に読み込んでいるコンテンツに悪意ある指示を紛れ込ませようとする従来のプロンプトインジェクションとは異なり、Prompt Forcingでは攻撃者がプロンプト全体とその後続の指示をエージェントにそのまま渡すことができます。エージェントはその指示を、自らが持つ既存の権限を使って正当なブラウザ操作へと変換してしまいます。</p
result

翻訳元: https://www.bleepingcomputer.com/news/security/bragjack-attacks-hijack-ai-browser-agents-through-malicious-extensions/

本記事は bleepingcomputer.com の記事を翻訳・要約したものです。