権限ゼロでも危ない:検索を乗っ取る拡張機能と閲覧 URL を送る拡張機能を棚卸しする
権限もコードもない「検索先を変えるだけ」の拡張機能が、検索語を運営者のサーバー経由で転送し、行き先をサーバー側で自由に選べる。業務ツールを装う拡張機能には閲覧 URL を丸ごと送るものもある。「権限が少ない」「おすすめバッジ付き」を安全の根拠にせず、既定の検索エンジンと導入済み拡張機能を定期的に確認する。
手口 1:Searchjacked(Socket、319 件・累計約 1340 万人)
manifest.jsonのchrome_settings_overrides.search_providerだけで既定の検索エンジンを変更できる。Safe Game Search は manifest とアイコン 3 個だけで、権限・バックグラウンド処理・コンテンツスクリプト・UI すらない。- 検索は運営者のサーバーを経由して Yahoo・Bing の提携 ID 付きで転送され、全検索語が運営者に見える。Predator Search では同じ検索 6 回で 4 種類の転送先になった(行き先はリクエストごとにサーバーが決める)。
- 多くはストアで非公開(検索に出ない)で、PDF 検索・マニュアル検索・AI 検索を装う広告から導入へ誘導される。Socket は約 111 件を Intango LTD、58 件を SecuryBrowse に関連付け。
- フィッシングや不正ダウンロードへの転送、検索語の販売は実証されていない(転送先を後から変えられる構造が問題)。
手口 2:OffiDocs 系(Am I Being Pwned、60 件中 37 件)
- 業務文書の編集などをうたう拡張機能が、パラメーター込みの閲覧 URL を 16 進数にして利用者 ID とともに送信。明示的な同意はない。サーバーの応答で閲覧中のタブを別ページへ切り替える処理もある。
- 同系統の無料 VPN「VPNOnline」は、毎時取得するキーワードに一致した URL を送信(報告時点の「ama」は amazon.com の全ページに一致)。
- URL にはログイン用リンク、トークン、機密文書へのリンクが含まれ得る。60 件中 17 件に「おすすめ」、40 件に「定評のあるパブリッシャー」バッジがあった。
対策
- 既定の検索エンジンを確認:
chrome://settings/searchの検索エンジンが拡張機能で管理されていないか(「拡張機能によって管理」表示)を見る。 - 拡張機能を棚卸し:
chrome://extensionsで、覚えのないもの・単機能の「検索」「PDF」「マニュアル」系を削除する。権限が空でもsearch_providerを上書きするものは対象。 - 組織では許可リスト運用: Chrome Enterprise のポリシーで拡張機能を許可制にし、既定の検索エンジンもポリシーで固定する。基本方針は VS Code 拡張機能を最小化し、自動更新を止める と同じく「最小限・審査済みのみ」。
- URL にトークンを載せない設計: 送信される前提で、マジックリンクや共有リンクを短命・一回限りにする。