Zenity Labs のセキュリティ研究者は、攻撃者が悪意のある Google カレンダー招待を使用してローカルファイルを盗むことを可能にした Perplexity の Comet「エージェント型」ブラウザの重大な欠陥を開示しました。
PerplexedBrowser と呼ばれ、Zenity の「PleaseFix」ファミリーに分類されたこの問題は、macOS、Windows、Android の Comet に影響を及ぼし、Bugcrowd で P1(重大)と評価されました。
この攻撃には、「このミーティングを受け入れる」などの通常のリクエスト以上の追加のユーザークリックは必要ありませんでした。
被害者が Comet の AI エージェントに招待を処理するよう依頼すると、エージェントは攻撃者が制御するコンテンツを開き、 file:// パスを使用してファイルを読み取り、ファイルコンテンツを URL クエリパラメータに埋め込んで外部サーバーに送信することで、データを流出させるように操作される可能性がありました。
Awesomeagents AI によると、Zenity は研究を Stav Cohen と Michael Bargury に帰しています。
攻撃がどのように機能したか
Zenity のチェーンは、合法的に見える、現実的な名前、役割、会議の詳細を持つカレンダー招待で始まります。
トリックは 空白にあります:大きな空白セクションは、ユーザーが招待をプレビューするときに気付く可能性が低い命令を隠します。
これらの隠された命令には、偽の HTML 要素と、内部の「システムリマインダー」ガイダンスのように見える形式のブロックが含まれます。
Comet のエージェントが招待を処理するとき、攻撃者の隠されたテキストをユーザーのリクエストと混合します。これは Zenity が「インテント衝突」と呼ぶ障害モードで、モデルが信頼できるインテントと信頼できないコンテンツを確実に分離できません。
次に、注入された命令は Comet を攻撃者のウェブサイトにプッシュします。これには、バックグラウンドでアクションを実行するためのキューが含まれており、被害者は目に見えるブラウジングがほとんどまたはまったく表示されません。
そのサイトは第 2 段階のプロンプトを配信し、英語に焦点を当てたセーフティチェックの効果を減らすためにヘブライ語で書かれていると報告されています。
プロンプトはファイルアクセスを無害な発見タスクとして再フレーム化し、エージェントがローカルディレクトリをトラバースし、 file:// URL を通じて機密ファイル(構成データ、API キー、保存された認証情報)を開くようにガイドします。
最後に、エージェントはパラメータにデータを含む URL を構築し、攻撃者のサーバーにナビゲートすることで盗まれたコンテンツを送信します。これは簡単な検査をバイパスできる流出パターンです。
Zenity は 2025 年 10 月 22 日にバグを報告しました。Perplexity は 2026 年 1 月 23 日に初期修正を公開し、コードレベルでエージェントの file:// へのアクセスをブロックしました。しかし、Zenity は view-source:file:/// トリックでこれをバイパスしました。
2 番目のパッチが 2 月 11 日に公開され、復旧が 2 月 13 日に確認され、 120 日間の開示プロセスが終了しました。
より危険な亜種は 1Password に関与していました:ブラウザ拡張機能がインストールされてロック解除されている場合、エージェントはボールトエントリを公開し、乗っ取りステップを支援する可能性がありました。ただし、MFA はそれでも抑制できる完全なアカウント侵害。
より広い教訓は 構造的です:信頼できないコンテンツを読みながら強力なローカルまたはアカウント許可を保持する AI エージェントは、高価値のターゲットになります。
翻訳元: https://gbhackers.com/perplexitys-comet-browser-breached/