(EFF)ブラウザのバージョンには、平均して10.5ビットの識別情報が含まれている

メインコンテンツへスキップ
Categories
< Back
You are here:
Print

(EFF)ブラウザのバージョンには、平均して10.5ビットの識別情報が含まれている

(訳者前書き)以下は、EFFのウエッブに掲載された記事ですが、15年以上も前の古い記事なので、参考までにお読みください。この記事は現在でもEFFのウエッブで公開されています。(としまる 2026/9/6アクセス)


著者:ピーター・エッカーズリー

2010年1月27日

これは、現代のウェブにおけるユーザー追跡に関する一連の投稿の第3部だ。第1部(日本語)および第2部(日本語)も併せて読むことができる。

ウェブページにアクセスするたびに、ブラウザは「ユーザーエージェント」ヘッダーをウェブサイトに送信し、使用しているOSやウェブブラウザを正確に伝える。この情報は、インターネットユーザーを互いに区別するのに役立つ可能性がある。なぜなら、これらのバージョンは人によって、しばしばかなり異なるからだ。私たちは最近、この情報がどの程度まで個人追跡に利用可能かを調べる実験を行った(例えば、誰かがブラウザのクッキーを削除した場合、ユーザーエージェントは単独で、あるいは他の詳細情報と組み合わせて、サイトがその人々を認識し、以前のクッキーを再作成できるほど一意なものとなるだろうか?)。

これまでの実験では、ブラウザのユーザーエージェント文字列には通常、5~15ビットの識別情報(平均で約10.5ビット)が含まれていることが判明した。つまり、平均して約1,500人(210.5)に1人しか、あなたと同じユーザーエージェントを持つ人はいないということだ。これだけでは、クッキーを再現して人々を完全に追跡するには不十分だが、特定の郵便番号までの位置情報や、珍しいブラウザプラグインのインストールといった他の詳細情報と組み合わせると、ユーザーエージェント文字列は深刻なプライバシー問題となる。

ユーザーエージェント:ブラウザの特性が追跡ツールとして機能する一例

ウェブユーザーのプライバシーを分析する際、私たちは通常、ユーザーアカウント、クッキー、IPアドレスに注目する。これらは、ウェブサーバーへのリクエストを他のリクエストと関連付けたり、特定の個人、コンピュータ、またはローカルネットワークに結びつけたりするための一般的な手段だからだ。

ウェブを閲覧する際のプライバシーを向上させるための典型的なアドバイスとしては、クッキー(およびスーパークッキー)をブロックまたは削除すること、IPアドレスを隠すためにプロキシサーバーやTorのようなツールを使用することが挙げられる。

ユーザーエージェントが、一意の追跡用クッキーと同様のリスクをもたらすことは、直感的には明らかではない。何しろ、クッキーは、ウェブサイトが個々のブラウザを区別・認識しやすくするために設計された側面があるのに対し、ユーザーエージェントにはそのような意図はないからだ。また、自分と同じブラウザやオペレーティングシステムを使っている人は、世の中に何百万人といるかもしれない。しかし、この問題をもう少し詳しく検討してみよう。典型的なユーザーエージェント文字列は、次のようなものだ:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)

実際、テスト期間中にEFFのウェブサイトにアクセスしたブラウザの中で最も多かったユーザーエージェント文字列は、Windows XP上で動作するFirefox 3.5.3だった。オペレーティングシステムやブラウザのバージョンが極めて具体的に指定されており、ユーザーエージェントにはユーザーの優先言語も含まれている点に注目してほしい。この文字列の中には変動しうる要素が数多くあり、それらの変動を利用して、人々がウェブを閲覧する際に個人を識別し、追跡することが可能になる。

ユーザーエージェントの識別可能性に関するこれまでの結果

私たちがEFFウェブサイトへのリクエストから抽出した36時間の匿名化サンプルを用いて、ユーザーエージェント文字列の識別精度を正確に測定する実験を行った。以下の表は、ブラウザの各分類と、その分類内における最良ケースおよび平均ケースのユーザーエージェントのビット数を示している:

各種ブラウザ分類における識別情報

Browser class平均的な識別情報最低限の識別情報(識別情報が最も少ないユーザーエージェント)
Modern Windows Desktops10.3-11.3 bits4.6 – 5.0 bitsMozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)
Internet Explorer13.2-13.5 bits6.3 – 7.2 bitsMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
Firefox7.5-8.5 bits5.7 – 6.2 bitsMozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.27 Safari/532.0
Chrome7.5-8.5 bits5.7 – 6.2 bitsMozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.27 Safari/532.0
Linux11.8-13.15 bits6.6-7.9 bitsMozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.14) Gecko/2009090216 Ubuntu/9.04 (jaunty) Firefox/3.0.14
Ubuntu9.6 – 11.7 bits6.6 – 7.8 bitsMozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.14) Gecko/2009090216 Ubuntu/9.04 (jaunty) Firefox/3.0.14
Debian13.5-15.3 bits10.50 – 11.7 bitsMozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.14) Gecko/2009091010 Iceweasel/3.0.6 (Debian-3.0.6-3)
Macintosh8.8-9.3 bits5.8-5.8 bitsMozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3
iPhone10.8 – 11.3 bits8.7 – 9.3 bitsMozilla/5.0 (iPhone; U; CPU iPhone OS 3_1 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7C144 Safari/528.16
Blackberry14.7 – 15.5 bits12.0 – 12.7 bitsBlackBerry9530/4.7.0.148 Profile/MIDP-2.0 Configuration/CLDC-1.1 VendorID/105
Android14.4 – 14.4 bits12.2-12.4 bitsMozilla/5.0 (Linux; U; Android 1.6; en-us; T-Mobile G1 Build/DRC83) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1

このデータセットには、いくつかの注目すべき事実がある。全体として、ユーザーエージェント文字列の識別能力の高さには驚かされる。10.5ビットは、インターネットユーザーを特定するために必要な総情報の約3分の1に相当する。

また、市場浸透率が低いFirefoxやUbuntuといったプラットフォームが、平均して、非常に大きなユーザーベースを持ち、ひいては「埋もれる」べき集団も大きいはずのWindowsやMicrosoft Internet Explorerと同等、あるいはそれ以上に識別性が低いという点も驚きだ。その一因として、EFFのウェブサイトへの訪問者が前者のグループを過大に代表している可能性があるが、インターネットエクスプローラーのユーザーエージェント文字列には非常に大きなばらつきがあり、典型的な例は次のようなものであることも明らかだ:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30618)

そこに含まれるさまざまなライブラリやコンポーネントのバージョンは、すべて本質的に部分的な追跡トークンとして機能している。

我々は、この分析をユーザーエージェントからブラウザのプラグインや設定空間全体へと拡張する新たなデータセットを収集するため、Panopticlickというプロジェクトを立ち上げた。Panopticlickを使えば、自分のブラウザの一意性の測定値を取得できるだけでなく、同時にEFFのプライバシー研究活動にも貢献できるのだ!

調査方法

2009年9月、eff.orgのウェブサーバーへの匿名化されたリクエストを36時間にわたりサンプリングした。各リクエストのIPアドレスをランダムなソルトでハッシュ化し、そのソルトを破棄した。その後、各ブラウザによって伝達される識別情報の量を算出した。識別情報は「エントロピーのビット数」で測定され、その情報によってあなたがどの程度の集団の中から特定されるかを示す。ブラウザは通常、5~15ビットの識別情報を送信しており、平均で約10.5ビットである。10ビットの識別情報があれば、210、つまり1024人の人々の中から特定されることになる。10.5ビットの情報であれば、1,448人弱の人々から個人を特定できる。

私たちがクッキーやその他の仕組みを用いてリピーターと新規訪問者を区別しなかったため、識別情報のビット数の各測定値は、上限値と下限値の間に位置する。1

1. 一方の境界値は、ハッシュ化された各IPアドレスを1回のリクエストとしてのみカウントした結果に基づいている。もう一方の境界値は、各ヒットを固有のブラウザとして扱うことに基づいている。ほぼすべてのケースにおいて、ブラウザに関連する識別情報の実際の量は、これら2つの値の間に収まるはずだ。

https://www.eff.org/deeplinks/2010/01/tracking-by-user-agent

Table of Contents