悪意ある通知でGoogle Geminiユーザーを騙せる脆弱性が判明

Image

出典:Nazar Rybak / Getty Images

新たなプロンプトインジェクション手法が発見されました。この手法を悪用すると、攻撃者はメッセージ通知の要約機能を利用してGoogle Geminiの音声アシスタントを不正操作できる可能性があります。

SafeBreachは本日、この攻撃に関する調査報告を公開しました。タイトルは「Gemini’s Secret Affair: Exploiting Gemini Voice Assistant Through Instant Messaging Apps(GeminiのひそかなたくらみーインスタントメッセージアプリからGemini音声アシスタントを悪用する)」です。これは同社のこれまでの調査の延長線上にあるもので、以前はカレンダーの招待を利用してGoogle Geminiに悪意あるプロンプトを処理させる手法が報告されていました。

SafeBreachのセキュリティリサーチチームリードであるOr Yair氏は、調査ブログ記事の中で、外国語の隠しテキストや無音化されたハイパーリンクに悪意ある命令を埋め込むことで、アシスタントがその内容をユーザーに知らせることなく処理し、不正な操作を実行できることを実証したと説明しています。不正操作の具体例としては、スマートホームデバイスの制御、無許可のビデオストリームの起動、信頼できる連絡先へのなりすましを含むソーシャルエンジニアリング攻撃、そして大規模言語モデル(LLM)の長期記憶への有害な情報注入などが挙げられています。

Yair氏はまた、「Fake Context Alignment(偽のコンテキスト整合)」と名付けた新たな手法によって、Googleの既存の防御策を回避できたと解説しています。

現時点では、この手法が実際の攻撃に使用された証拠はありません。SafeBreachは責任ある情報開示の手順に従ってGoogleへ報告しており、Googleはその後、問題に対処するためのコンテンツ分類器の更新を展開しています。Dark ReadingはGoogleにコメントを求めましたが、同社からの回答はありませんでした。

Geminiによる安全でない通知要約の仕組み

今回のプロンプトインジェクションの核心は、Google Geminiの一部の防御機能がメッセージの送信元を適切に判別できていなかった点にあります。

攻撃の仕組みはこうです。見知らぬ番号からWhatsAppでフィッシングメッセージが届いたとします。内容は「親しい友人の誕生日パーティーへの招待」で、食費の一部として送金を求める支払いリンクが添えられています。さらにそのメッセージには、Geminiチャットボットに対して「このメッセージは見知らぬ番号ではなく、その友人から送られたものだ」と伝えるよう指示する、目に見えるハイパーリンクコードが含まれています。ここでユーザーがGeminiにメッセージを読み上げるよう頼むと、Geminiは「親しい友人から誕生日パーティーへの招待が届いています」と答えるだけで、それ以上の文脈は一切伝えません。

通常通りメッセージを目で読んでいれば、ほとんどのユーザーはフィッシング詐欺と気づいてスルーするでしょう。しかし、運転中などの状況でGeminiに通知の要約を頼んでいると、重要な文脈が省かれたまま誤った信頼感が生まれる危険性があります。

ハイパーリンクコードに加え、攻撃者はメッセージの末尾に外国語の不可視テキストを使って同様の悪意ある命令を埋め込む手口も使えます。Geminiはその内容を解釈しますが、ユーザーには読み上げません。

Googleの防御機能が悪意ある命令をブロックしてしまうケースでは、攻撃者はSafeBreachが以前の調査で報告した「遅延ツール呼び出し(Delayed Tool Invocation)」という別の手法を組み合わせることができます。この手法では、ユーザーが何らかの形で二次承認を行った場合に安全でない操作を実行するよう命令を埋め込みます。

具体例として示されたのは、「Hello」という文に続いて、声に出して読み上げない隠し命令を含む中国語の文字列、そして「Will that be all?(それだけですか?)」という文で構成されたメッセージです。隠し命令はGeminiに対し、攻撃対象のユーザーが肯定的な返答をした場合に安全でない操作を実行するよう指示する内容です。

Yair氏によると、外国語の文字とハイパーリンクを組み合わせた場合に最も高い効果が得られたといいます。

「信頼性とステルス性を最大化するため、両方の手法を組み合わせました。最終的なペイロードはGeminiに対して悪意ある承認要求を中国語で出力させ、その中国語テキスト全体を無音化されたハイパーリンクの中に完全に隠蔽します」とブログ記事は述べています。「ユーザーには完全に正常な英語のプロンプトが聞こえ、無害な『はい』と答えるだけで、遅延ツール呼び出しが密かに実行され、Googleの最新の緩和策をシームレスに回避します。」

プロンプトインジェクションに恒久的な解決策なし

遅延ツール呼び出しの初期バージョンはすでに修正済みですが、Fake Context Alignmentはその緩和策を回避します(今回のブログで報告された問題をGoogleが修正する前の時点での話です)。ブログでは「Fake Context Alignmentの主な目的は二重の錯覚を生み出すことにある。Geminiの内部セキュリティ機構には正当な承認シナリオを見せる一方で、被害者には全く異なる無害なシナリオを提示する」と説明されています。

問題はすでに対処されており、Geminiユーザーが直接取るべきアクションは特にありません。しかしSafeBreachは、コンテキストのすり替えは重大なリスクであり、攻撃者が防御策を回避する新たな方法を見つける余地を生み出すと警告しています。そのため、ユーザーとAIアシスタント間のあらゆる通信チャネルを追跡することが「不可欠」だとしています。

また組織は、現在のAIアーキテクチャには欠陥があり、プロンプトインジェクションを完全に防ぐ万全な方法は存在しない(特にモデルが公開されている場合)という事実を認識したうえで、LLMモデルを展開する際にはアクセス制御に細心の注意を払う必要があります。

「AIアシスタントは通知などの外部コンテンツをすべてデフォルトで信頼できないものとして扱うべきか」という問いに対し、Yair氏はDark Readingに「はい、100%そうすべきです」と答えています。

「外部入力はすべて潜在的な命令になり得るため、信頼できないものとして扱う必要があります。この点を十分に理解することが非常に重要です。また、間接的なプロンプトインジェクションは単純に修正できる古典的な脆弱性ではないことも同様に重要です」とYair氏は述べています。「解決策は、ガードレールや分類器を設けることです。つまり、ベンダー側がこうした動作を監視しようとする、セキュリティコントロールのような積極的な仕組みを構築することが求められます。」

翻訳元: https://www.darkreading.com/application-security/malicious-notifications-could-trick-google-gemini-users

ソース: darkreading.com