フィルタートラップ:「Adbleed」がいかなるVPNの背後でもあなたの実際の位置を暴露する方法

セキュリティ研究者のMelvin Lammertsは、VPNユーザーの部分的な匿名性解除のための洗練された技術を実証する概念実証(PoC)ユーティリティ、Adbleedを公開しました。その核心的な前提は、VPNがユーザーの真正なIPアドレスを効果的にマスクし、リモートサーバーを通じて地理的座標を難読化する一方で、ブラウザの広告ブロッキングヒューリスティックを変更できないということです。これらのフィルタリングルールは、頻繁にユーザーの特定のロケールと言語設定に依存しています。

大多数の広告ブロック拡張機能は、フィルターリストを介して動作します。これは、悪意のあるドメイン、ページ要素、侵襲的なトラッカーの解決を阻止するように設計されたルールの広範なリポジトリです。EasyListのような基礎的なリストは英語圏の広告とグローバルネットワークをターゲットにしていますが、ユーザーや拡張機能はしばしば補助的なローカルフィルター(EasyList GermanyListe FRなど)を有効化して、地域的な迷惑要素に対抗します。これらのローカライズされたリストには、グローバルセットには存在しない多数の独自ドメインが含まれており、その相違点がデジタル指紋に変わり、VPNの出口ノードに関わらず、居住国または主要言語を明らかにしてしまいます。

Adbleedは、ブラウザ常駐のJavaScriptを介して、完全にクライアント側でアクティブな地域フィルターを識別します。この戦略は、リクエスト終了時のタイミング差異を悪用します。スクリプトは、特定の国のフィルターリスト内にのみ隔離されたドメインから小さなファビコンを取得しようと試みます。ブロッカーがリクエストを傍受すると、エラーはほぼ瞬時に、通常5ミリ秒未満で、ネットワークスタックに到達する前に現れます。逆に、フィルターが存在しない場合、リクエストはネットワークを通過します。存在しないドメインの基本的なDNSルックアップでさえ、数十または数百ミリ秒のレイテンシが発生します。この応答時間の差が、決定的なテレメトリシグナルとして機能します。

各管轄区域について、著者は30の特定ドメインを精査し、少なくとも20が正常に遮断された場合にローカルリストがアクティブであると結論付けます。この高い閾値は、重複するフィルターセットや異なるブラウザ構成から生じる誤検出を軽減するために、慎重に調整されています。ローカルフィルターが有効になっている実際のシナリオでは、成功率は通常、完全な30に収束します。

重要な課題は、グローバルなEasyListには存在しない、地域リストに固有の「シグネチャ」ドメインを抽出することです。著者は比較アプローチを採用しています。基礎リストと各地域バリアントからドメイン固有のルールを抽出し、交差部分を差し引き、国別トップレベルドメイン(TLD)を持つドメインを優先します。このツールはまた、アクティブなブロッカーの存在を検証するために「ポジティブ」ドメインを使用し、異常な構成を除外するために「ネガティブ」ドメインを利用します。

絶対的な匿名性を求める人々にとって、その影響は深刻です。このフィンガープリンティング技術は、VPN、Torブラウザ、および各種プロキシを横断して持続し、Cookieや特定の権限を必要としません。これは個人のアイデンティティを明示的に暴露するわけではありませんが、タイムゾーン、キーボードレイアウト、システムフォント、画面解像度などの他のテレメトリと統合されると、匿名性の範囲を劇的に狭めます。

この脆弱性を修正することはジレンマを提示します。地域フィルターを無効にすると、ローカライズされた広告やトラッカーの侵入が促進される一方、複数の「ランダムな」リストを有効化すると、サイト機能が低下し、過度のノイズが発生する可能性があります。広告ブロッカーを完全に無効化することは、全体的なプライバシーにとってしばしば有害です。著者は、開発者がより細かいルール適用を実装する可能性を示唆しています。たとえば、グローバルではなく関連ドメインでのみ地域フィルターを有効化するなどです。Adbleedは厳しいリマインダーとして機能します。あなたの広告ブロック構成は、VPNによって保護されないデジタルアイデンティティの一面です。

翻訳元: https://meterpreter.org/the-filter-trap-how-adbleed-unmasks-your-real-location-behind-any-vpn/

ソース: meterpreter.org