Last Updated on 2025-04-08 07:48 by admin
Googleは2025年4月23日にリリース予定のChrome 136で、23年間存在していたブラウザ履歴スニッフィングと呼ばれるサイドチャネル攻撃の脆弱性を修正する。この機能はすでに4月3日にChromeベータチャンネルにリリースされている。
この攻撃手法は、ウェブページ上のリンクの色を読み取ることで、ユーザーが過去に特定のページを訪問したかどうかを判別するものである。CSSの:visited疑似クラスを利用し、訪問済みリンクに特定の色(通常は紫色)を適用する仕組みを悪用している。
この問題は2000年にプリンストン大学のEdward FeltenとMichael Schneiderによる「Timing Attacks on Web Privacy」という論文で初めて指摘され、2002年5月28日には現在GoogleのソフトウェアエンジニアであるDavid Baron(当時Mozilla所属)がFirefoxのバグレポートを提出した。
約15年前に一部の緩和策が実施されたが、完全には解決されなかった。2011年にはカーネギーメロン大学の研究者たちが「I Still Know What You Visited Last Summer」という論文で、当時の緩和策を回避する6つの攻撃手法を実証している。
GoogleのソフトウェアエンジニアであるKyra Seeversによると、Chrome 136は「これらの攻撃を時代遅れにする最初の主要ブラウザ」となる。新しい解決策は「訪問済みリンク履歴のパーティショニング」と呼ばれ、リンクURL、ウェブサイトのトップレベルドメイン、フレームの起点という3つのキーを使用して履歴を分離する。これにより、ウェブサイトが他のサイトの訪問状況を評価することができなくなる。
セキュリティ研究者のLukasz Olejnikは、この対策が「プライバシーエンジニアと攻撃者の間の何十年にもわたる軍拡競争を打ち破る」と評価している。
from:Chrome to patch decades-old flaw that let sites peek at your history
【編集部解説】
ブラウザ履歴スニッフィングという言葉を初めて聞かれた方も多いのではないでしょうか。この問題は、ウェブの黎明期から存在していた深刻なプライバシー侵害の手法です。
この脆弱性は、CSSの:visited疑似クラスという、訪問済みリンクの色を変更する仕組みを悪用したものです。通常、ブラウザはユーザーが過去に訪れたサイトへのリンクを紫色で表示しますが、悪意あるウェブサイトはこの特性を利用して、ユーザーがどのサイトを訪問したことがあるのかを密かに調査できてしまいました。
特に注目すべきは、この問題が2000年に初めて学術論文で指摘されてから、実に四半世紀近くもの間、完全な解決策が実装されてこなかったという事実です。2010年頃に一部の緩和策が導入されましたが、研究者たちはすぐにその回避方法を発見してしまいました。
今回Googleが導入する「訪問済みリンク履歴のパーティショニング」という解決策は、ブラウザのアーキテクチャを根本から変える革新的なアプローチです。これまでブラウザは訪問履歴をグローバルなリストとして管理していましたが、新しい仕組みでは「リンクURL」「トップレベルサイト」「フレーム起点」という3つの要素を組み合わせて履歴を分離します。
簡単に言えば、あるサイトAで訪れたリンクは、そのサイトAの中でのみ「訪問済み」として紫色で表示され、別のサイトBからは「未訪問」と判断されるようになります。これにより、サイトBがユーザーのサイトAでの行動を推測することが不可能になるのです。
この変更がもたらす影響は計り知れません。これまで多くのサイトがユーザーの閲覧履歴を密かに収集し、プロファイリングに利用してきた可能性があります。例えば、特定の政治サイトや健康関連サイトへの訪問履歴から、ユーザーの政治的傾向や健康状態を推測することも技術的には可能でした。
興味深いのは、Googleが長年この問題を「修正しない」と判断していたにもかかわらず、方針を転換したことです。これは、プライバシーに対する社会的関心の高まりを反映していると考えられます。
また、Chrome 136のリリースは2025年4月23日に予定されていますが、すでに4月3日からベータ版では機能が実装されています。Chromeに続いて他のブラウザも同様の対策を導入することが期待されます。
一方で、この修正によって一部のウェブサイトの機能に影響が出る可能性もあります。正当な目的で訪問履歴を利用していたサービスは、代替手段を検討する必要があるでしょう。
セキュリティ研究者のLukasz Olejnikが「プライバシーエンジニアと攻撃者の間の何十年にもわたる軍拡競争を打ち破る」と評したように、この変更はウェブのプライバシー保護における大きなマイルストーンとなります。
なお、Chrome 136には他にも「CSS dynamic-range-limit property」や「Blob URL Partitioning」など、複数の新機能が含まれています。また、Chrome 136からは「remote debugging port」の使用にカスタムデータディレクトリの指定が必須となるなど、セキュリティ強化のための変更も実施されます。
テクノロジーの進化とともに、プライバシーとセキュリティの重要性はますます高まっています。今回の修正は、ユーザーが安心してウェブを閲覧できる環境づくりに大きく貢献するでしょう。
【用語解説】
ブラウザ履歴スニッフィング:
ウェブサイトがあなたの過去の閲覧履歴を密かに調査する手法。
CSS :visited疑似クラス:
訪問済みのリンクに特別なスタイル(主に色)を適用するためのCSS機能。
サイドチャネル攻撃:
システムの実装上の特性(この場合はリンクの色の違い)を利用して情報を抽出する攻撃手法。
パーティショニング:
データを分離して保存する技術。今回の場合、訪問履歴をウェブサイトごとに分けて保存することで、あるサイトが他のサイトの訪問情報にアクセスできないようにする仕組み。
【参考リンク】
Google Chrome(外部)
Googleが開発する世界シェア65%以上を持つウェブブラウザ。Chrome 136で履歴スニッフィング対策実装
Mozilla Firefox(外部)
Mozillaが開発するオープンソースのウェブブラウザ。2002年に最初のバグレポートを提出
Lukasz Olejnik(研究者)のブログ(外部)
セキュリティ研究者のブログ。ブラウザ履歴スニッフィングの研究と解説を掲載
【編集部後記】
みなさんは普段、ブラウザでどんなサイトを見ていますか?実は今までのブラウザでは、あなたが訪れたサイトの履歴が他のウェブサイトに知られる可能性がありました。Chrome 136の新機能は、この長年の問題をついに解決します。ブラウザの「訪問済み」リンクの色が変わる仕組みを悪用した攻撃から、あなたのプライバシーを守るこの技術革新。ブラウザの設定で「訪問済みリンクの色」を確認したことはありますか?この機会に、日常使うテクノロジーのプライバシー設定を見直してみるのも良いかもしれませんね。