IPアドレスやCookieなしにユーザを識別する研究 59
ストーリー by soara
メーカー出荷時のままだとどうなるのかな 部門より
メーカー出荷時のままだとどうなるのかな 部門より
あるAnonymous Coward 曰く、
EFF(電子フロンティア財団)はIPアドレスやCookieなどを用いず、コンフィギュレーションデータからユーザやそのコンピュータを識別する研究プロジェクトを行っているそうだ(本家記事より)。
「Panopticlick」というこのプロジェクトでは、User Agent stringやプラグインのバージョン、フォントといったデータを総合してユーザを識別することは可能かを検証しているとのこと。例えばウェブページ閲覧時に送信されるUser Agent stringにはOSやブラウザの情報など平均10.5ビットの情報が含まれており、これだけでもおよそ1500分の1の確率でユーザを識別できるとのこと。
Panopticlickのサイトでは、ユーザのブラウザ情報などをデータベースと比較して一意に識別できるか診断してくれるWebツールが公開されている。診断時のデータは匿名でデータベースに記録されるため、プロジェクトのデータ収集への貢献にもなるとのこと。
EFFでは多くのデータを収集してこの手法に対する識見を広げ、将来的にこれを利用したトラッキングや広告に対するユーザの自己防衛策に役立てたいとのことだ。
こんにちは。オサマ・ビンラディンさん (スコア:4, すばらしい洞察)
俺「違うって」
財団「いやいや、そんな事はないでしょう」
俺「どーしたら、信じてくれるんだ」
俺「あ、誰か来た・・・」
外人にハイテクを使わせると、危なくて仕方がない。
Re:こんにちは。オサマ・ビンラディンさん (スコア:2)
住所を正しく把握できるはずがないので
オリバーの家に踏み入るに、100万ルピー。
Re: (スコア:0)
一意の名前のフォントをダウンロード (スコア:2, 興味深い)
(しかし、一意の名前のフォントをダウンロードさせます)
って話になると嫌だね
-- LightSpeed-J
これじゃほとんど識別できないみたい。 (スコア:1, すばらしい洞察)
> 1500分の1の確率でユーザを識別できるとのこと。
これは誤訳ですよね。少なくとも表現を変えたほうがいいのでは。
Re:これじゃほとんど識別できないみたい。 (スコア:2, おもしろおかしい)
1/60 の確率でユーザを識別するシステムを考案しました。
→ 「あなたは、『佐藤』さんです。」
# そういうことじゃないですね。すみません。
Re:これじゃほとんど識別できないみたい。 (スコア:1, すばらしい洞察)
ヘルシア緑茶ふいた。
「これだけでもユーザ情報が他人と完全一致する確率はおよそ1500分の1になるとのこと。」ぐらいでしょうか.
Re:これじゃほとんど識別できないみたい。 (スコア:2)
オオカミ少年だ(笑)
自分の場合、Operaを使っている時点でかなり絞られているよなぁ
Re:これじゃほとんど識別できないみたい。 (スコア:1, 参考になる)
本家記事より
> for a typical Internet user, only one in about 1,500 (2 ^ 10.5) others
> will share their User Agent string
自分とまったく同じUserAgentなのは平均1500人に1人の割合だということでしょう。
全インターネットユーザーの中から1/1500に絞り込めるのだから、情報量は
10.5ビットということ。
Re: (スコア:0)
誤訳以前に, 10ビットそれぞれが任意の値を取るわけないんだから
1000人どころか100人も識別できないよねw
Re:これじゃほとんど識別できないみたい。 (スコア:3, 参考になる)
Re:これじゃほとんど識別できないみたい。 (スコア:2)
Re:これじゃほとんど識別できないみたい。 (スコア:1)
いや、それは話の流れが逆。
先に「約1500種類まで絞り込める」という統計的結果があって、そこから
log21500=10.5507で、「10.5ビットの情報がある」と算出されたのではないかと。
10.55…は四捨五入で10.6ビットじゃないかという意見もありそうですが、
こういう場合、切り上げると過大評価になっちゃうので、切り捨てるようにするというのはよくある話。
実は日本の携帯電話が平均値を押し上げていたりして・・・ (スコア:1)
TO
これは無理だろ (スコア:1)
たとえば,これで「複数のiPhoneユーザーからのアクセス」を識別できるのか?
あと「会社で配布された標準構成PC」とかもきついだろうな。
追加ソフトウェアの導入が禁止されてたりすることも多いから。
Re:これは無理だろ (スコア:1)
うーん、というかこれって、ユーザーを識別するのではなく環境を識別する取り組みですよね。IPアドレスや Cookie も。
環境を識別しようとするならそれなりにゴールに近づいているのかもしれないですが、ユーザーを識別するのがゴールならほとんど無意味でしょう。
ちなみに本家のタイトル見たら、「Tracking Browsers Without Cookies Or IP Addresses?」でしたよ。
Re: (スコア:0)
裏情報がリークされてしまった会社が躍起になっているかどうかは分かりそうですね。
この手の情報が一箇所に集まると、判定できる確率が一気に上がりますね。
(いわいる、まとめサイト系で判定祭りとか起きたり?)
よし、確率をもっと上げるためにIPアドレスを!
あれ?
Re: (スコア:0)
iPhoneはこんな小細工しなくたってアプリはUDID送りたい放題じゃん。
> 「ユーザーの情報をネットワーク上に送信する場合は、事前に通知しなければいけない/Application should inform before send the user information」
とかいうガイドラインがあるらしいけど、固有IDなしじゃ生きられないガラパゴス開発者がそんなもの遵守するわけないし。
一方楽天では (スコア:1)
FLASHの脆弱性を利用してcookieなしで閲覧遍歴を収集していた
参考 [nikkei.co.jp]
Re:一方楽天では (スコア:1, 参考になる)
Flashの脆弱性というとまるでFlashに問題があるみたいだけど、その記事ではFlashはリンクを多数効率的に生成するために使われているだけで、実際にはブラウザの(というかCSS仕様の)脆弱性。
関連ストーリー: 楽天・ドリコムの行動ターゲッティング広告、HTML/CSS仕様の不備を突いて訪問先サイトを調査 [srad.jp]
FlashにはSharedObjectというCookieもどきがあってプライベートブラウジングやプライバシー情報の消去にも従わないという問題は確かにあるけどその記事とは別の話。
ん? (スコア:1)
公衆機器からのアクセスだと、難しいんじゃないかしら。
ネット喫茶やら大学の講義用PCからだと、ほぼ同じ環境下にあってネットワークの設定しかさわってない状態のマシンだから、この方法だと識別が出来ない気がする。
試みとしては面白いけどねぇ
Re:ん? (スコア:1, 興味深い)
利用者もそれを期待していませんし、最初から対象外だと思います。
# 訪問先のサイトでIDやパスワードを入力した後でのCookieなら考えられますが
スクリーンサイズ (スコア:1)
Screen Size and Color Depthが1024x768x24な私の環境は、50.18人に1人だそうです。
1024x768って確かに古いですけど、そんなに変なサイズじゃないはずだけどなぁ。
「今時そんなちっちゃいディスプレイ使ってる貧乏人なんて2%くらいしかいねーぜ」って意味かな?
1を聞いて0を知れ!
Re:スクリーンサイズ (スコア:1)
なんですと!むしろ32bitなんてあったんだ!
http://e-words.jp/w/32E38393E38383E38388E382ABE383A9E383BC.html [e-words.jp]
赤、青、緑の光の三原色を、それぞれ8ビット(256階調)で表現する。残りの8ビットの使い方はソフトウェアによって様々である。不透明度(アルファ値)に割り当てて半透明処理に利用している場合や、マイクロプロセッサが32ビット単位でデータを処理するのに合わせて32ビットずつにしているだけで、残り8ビットは利用しない(ダミーデータ)場合などがある。
あー、なんだ。だったらいらねー。
1を聞いて0を知れ!
識別されちゃいました (スコア:0)
いまのところ256,523件のデータがあるそうですが、
プラグインの情報からも、フォントの情報からも、一意に特定されてしまうようです。
フォントはいろいろとフリーなのを入れて遊んだことがあるので、同じ組み合わせ
というのは、まずありえなさそう。
逆に言えば、プラグインやフォントをインストールしたりアンインストールしたり
アップデートすると、別人だとみなされるってことかな。
Re:識別されちゃいました (スコア:2)
いつも使ってるFirefox(Debian sidに入ってるiceweasel)で,
識別されちゃったのはわかるんですが,Debian lennyの w3mでも識別
されちゃいました.
HTTP_ACCEPTヘッダが特殊なのか…
(User Agentは1/2550くらいの確率で合致するみたいですね)
Re: (スコア:0)
w3mを使ってる人なんてごくまれなのですから、w3mを使っているというだけで非常に情報量が多くなります。
Re:識別されちゃいました (スコア:2)
いや,w3mが使っているのが特殊というのは分かるのですが,
それだけだと一人にはたどりつかないようです.元コメントに
書いたように全体の1/2550くらいのユーザがw3mを使ってアクセスしたようで.
で,今回,270,000人以上の人の中で,一意に特定されちゃった理由は
HTTP_ACCEPTヘッダでした.これは他のどのユーザとも一致しなかったようです.
Re:識別されちゃいました (スコア:1)
それなりに環境をいじる人相手なら、"Browser Plugin Details" と "System Fonts" だけで個体識別できそうな感じですね。
>逆に言えば、プラグインやフォントをインストールしたりアンインストールしたり
>アップデートすると、別人だとみなされるってことかな。
ハッシュ値を記録するような仕組みであればちょっとの変更で別人になりますけど、素のデータを記録していれば追跡して個体識別を継続できるでしょう。
そこまでやらなくても、1日だけ有効な2ちゃんねるの"ID"的な短期間の個体識別には十分使え(使われ)そうです。
Re: (スコア:0)
私はブラウザプラグインで引っかかりましたけど、26万人に一人とか言われても、それがユニークの相手かどうかを確定する証拠としては弱い感じ。
プラグインやフォントを一つ抜いてアクセスすれば変わるでしょうけど、未配布の自作ツールで無い限り有限個の要素の組み合わせによる誰かと同じ環境ですわっていうことにしかならないので現状ではcookieを超えるものにはなりそうにないですね。
javascriptに依存しすぎてますし、なにより遅いです。今のところは生暖かく見守り隊。
Re: (スコア:0)
菅家さんはたしか800人に1人とかいう確率で17年半も拘束されていたのだったね
Re:識別されちゃいました (スコア:1)
ブラウザを使い分けると (スコア:0)
IEがほぼ独占状態だった頃と比べるとケースに分けて使い分ける人が増えている気がします。
Re:ブラウザを使い分けると (スコア:1)
User Agent Switcher [mozilla.org]
セーフモードで起動した場合もやばいのかなあ。
なんだかMSのアクティベーションでのトラブルを見るようだ。
HDDの換装やCPUの差し替えなんてのは頻繁にやるものではないけれど、
複数ブラウザの使い分けや設定変更などというのは、日常茶飯事なんだけどな。
Re:ブラウザを使い分けると (スコア:1, すばらしい洞察)
下手に非標準的なUser Agentを使ったらりコロコロ切り替えたりしたらかえって識別されやすくなりますよ。
こういうのはいかに「みんなと同じ」にするかが重要なのですが、それは自分ひとりでは達成できません。
Re:ブラウザを使い分けると (スコア:1)
User Agent Switcherは文字通りにUser Agentを切り替えるだけで、
非標準だなんて一言も言っておらんのだが?
あとこのシステムにおいては「他の人と違う」ことはさして重要ではなく、
重要なのは「誰であるか」の特定でしょ。
「みんなと同じにする」のは全く意味がない。
Re:ブラウザを使い分けると (スコア:1)
あとこのシステムにおいては「他の人と違う」ことはさして重要ではなく、
重要なのは「誰であるか」の特定でしょ。
そうですか?私には全く反対だと思います。
>重要なのは「誰であるか」の特定でしょ。
何処をみてそういうことが出てきたのかさっぱりわからないのですが
この記事を簡単に言えば"フィンガープリントになり得る情報を発見した"ということですから
言ってみれば、他人を区別する方法を発見したと言うことですよね。
たとえば、「"山田太郎"という人は、黄色い服を着ている」という情報がわかっていて
みんながみんな黄色い服を着ている場合と
たった一人だけが黄色い服を着ている場合では
どっちが”山田太郎”を見つけやすいか?という話になると思います。
ですので、自分が"山田太郎"であること隠す、結びつきを弱くするためには
1.他の人に自分と同じ服を着させる
2.自分が他の人と同じ服を着る
3.そのままにする
のどれが一番簡単で有効かというと(2)ですよね。
あえて言う必要はないと思いますが、念のために書きます。
実際にはこれが「山田太郎」ではなく「どこぞの、とある趣味のページをのぞいていた」だとか
「何処何処の掲示板にスパムを書き込んだ」という情報がフィンガープリントと結びつけられたりするわけです。
User Agent Switcherは文字通りにUser Agentを切り替えるだけで、
非標準だなんて一言も言っておらんのだが?
だからなんなんでしょう?へりくつをこねるなら、あなたは標準(?)とも言っていないですし
UAにでたらめでユニークな物を割り当てるかどうかなんてどうでもいいです。
それを使った場合と使ってない場合では
どちらがデフォルトに近く、大多数になれるかというと
それは当然使ってない場合ですよね。
UAを変更することで、別の他人になることは可能かもしれませんが
その行為自体が特徴を持ってしまうと言うことになり得るわけです。
別の例でたとえると、指紋を焼くことによって、ブラックリストに該当しなくなるかもしれませんが
明らかに怪しい人物に見えます。まあ、焼くと言うより指紋を変えるわけですが
どう見ても白人なのに、黒人特有の指紋を持っていたら、怪しいですよね。
指紋を変えている人は大多数ではないので、さらに特定されやすくなる。ただそういうことです。
Re:ブラウザを使い分けると (スコア:2)
>この記事を簡単に言えば"フィンガープリントになり得る情報を発見した"ということですから
>言ってみれば、他人を区別する方法を発見したと言うことですよね。
文字通り「指紋」なので、
「ある特定人物(この場合は端末)を(ほぼ)完全に一意に識別できるID/手法を発見した」
「その『指紋』を持つのは、(事実上)ただ一人のユーザーである」
と言いたいのでしょう。
>どっちが”山田太郎”を見つけやすいか?という話になると思います。
そのレベルだと「指紋」とは言わない。
「黄色い服を着ている人」なんてごまんといるのだから、指紋代わりとしては弱すぎます。
まして一年前と今、昨日と今日で指紋がコロコロ変わるようでは、それは指紋代わりにはなりません。
Re:ブラウザを使い分けると (スコア:2)
たとえに噛み付いてもしょうがないと思います。この手法は「黄色い服を着ていて野球帽を被っていてスニーカーをはいていて…」と絞り込んでいくシステムですから、「Fxっぽい文字の入ったIEのUAを送ってくる」というのは元ACの言うとおり同一性判定の確度を上げてしまうでしょう。
Re: (スコア:0)
「1500人に1人」程度の精度しかないともともと言ってるのに勝手に自分に都合のいい状況を設定して楽しいですか?
> まして一年前と今、昨日と今日で指紋がコロコロ変わるようでは、
「指紋がコロコロ変わる人」なんて非常に珍しいと思いますが。
Re:ブラウザを使い分けると (スコア:1)
>「黄色い服を着ていて野球帽を被っていてスニーカーをはいていて…」と絞り込んでいくシステムですから
「黄色い服を着ていて野球帽を被っていてスニーカーをはいていて…」という人が
数日後に「赤い服を着ていて帽子を被らずに革靴をはいていて…」、
しかも別の人は
「赤い服を着ていて毛糸の帽子を被っていて運動靴をはいていて…」という状態の数日後に
「黄色い服を着ていて野球帽を被っていて運動靴をはいていて…」という
ことになれば、ある個人を誤認識する可能性が高くなるってことです。
ブラウザが送る情報なんて、基本的に自己申告なんだから。
User Agent Switcherはその例の一つでしかない。
>「Fxっぽい文字の入ったIEのUAを送ってくる」というのは
#そこは「IEのユーザーエージェントを送ってくる、Firefoxっぽい何か」というべき。
Re:ブラウザを使い分けると (スコア:1)
これって、トラッキング避けの話だから、没個性的であることが一番の回避策になります。ユーザが回避したい状況ってのは例えば、
ある人がサイトAでaを買って、サイトBでもbを買った。実はAとBは共謀していて、「aとbを買った人が居る」→「aを買う人にはbの宣伝をすれば有効かも知れない。逆もまたしかり」という情報を裏で引っ張り出した。結果、サイトAのアカウント宛に「bを買いませんか?」、サイトBのアカウント宛に「aを買いませんか」と広告が届いてうざい。
とか。「誰であるか」は、副次的に得られるかもしれない情報です。 この例えでサイトAが通販ではなく個人情報の登録の必要も無いサイトだからと安心していると、 通販サイトBが持ってる個人情報とAが持ってる閲覧履歴を付き合わせて、 ある人○○さんがどんなサイトを見ていたかを特定できる可能性もあると言った感じで。
UAを非標準の文字列に設定していると、Javascriptでアレコレ裏技を駆使して(各機能への対応情報などを調べて)「UA設定ではFireFoxなのに挙動がIE」とか分かれば、 「IEをFireFoxと名乗らせている人」という個性が出て来て、追跡が簡単になります。
サイトA「IEなのにFireFoxな人がこれこれを見たよ」
サイトB「IEなのにFireFoxな人がこれを買ったよ。ついでにその人の氏名は○○、住所は・・・」
→○○さんはこういうサイトが好きっぽいな、広告送っておこう
で、通販はIE、秘密の趣味はFireFoxと使い分け、プロバイダのプロクシを通してIPアドレスを誤魔化しておくなど、追跡をされまいとする人を追跡しうる技が何か無いかなというところで、OSの情報は引っ張ってこれないか? ってのがこのストーリーの本題です。
ちゃんと読んでないので想像ですが、
(1) 有名どころから無名な物までフォントの幅情報を大量に集めておく
(2) HTMLに不可視な部分を作っておき、ページがロードされるとJavascriptがこそっとその部分のフォント設定を変えまくる
(3) それと共に、各フォント毎に、不可視な部分の横幅がどうなったかをチェックしていく
(4) (1)で集めた情報から、「それぞれのフォントでそれぞれの環境で不可視部分を正しく描画するとどういう横幅になるのか」のデータベースは作れる。
(5) 「予想される横幅になった」なら、「フォントが正しく設定された」→「そのフォントがインストールされている」 (6) 「ならなかった」なら、「そのフォントはインストールされていない」
(7) 「どのフォントとどのフォントがインストールされているか」、と言う情報はブラウザに依存しない「個性」なので、上記のようなブラウザ使い分けでは対策として不十分
とか。
# ついでに、別にこの情報を使って不正なユーザトラッキングをしようぜ、が本題ではなく、
# ホントに出来るか? 出来たとしたら、どう身を守ればよいか? が本題。
# クリーンインストール直後のWindowsのバーチャルマシンでも用意しておいて、
# 個人情報の送信はその上でしか行わない、とか? それはそれで不自然か?>フォントが異様に少ない環境。
# まぁ、マルウェアチェッカがそういうサイトは弾いてくれることを期待。
Re:ブラウザを使い分けると (スコア:1)
># クリーンインストール直後のWindowsのバーチャルマシンでも用意しておいて、
># 個人情報の送信はその上でしか行わない、とか? それはそれで不自然か?>フォントが異様に少ない環境。
他の秘密の趣味と切り分ける、という目的ならこれも含めてどんなに不自然な環境でも十分ですね。不自然な環境だと、多くのサイトが共謀すると自分が買ったもの一覧が作られてしまう可能性がある、要するに「ある特定の人がいろんなサイトで買ってる物リスト」をインターネットに対してばらまいている事にはなりますが。
Re: (スコア:0)
まあ、落ち着け。君が言っていることは全部まちがっている。
Re:ブラウザを使い分けると (スコア:1)
意識の低い大半のユーザは (スコア:0)
「Anonymous Coward」と認識されるんですね、わかります。
なんか指紋の後からベルティヨン身体測定法 (スコア:0)
が採用されるみたいなイメージが…
Re: (スコア:0)
「ベルティヨン身体測定法」をぐぐってみたら納得。
あるいはタスポが採用された後に顔認識を導入する [msn.com]のにも似てるかも。
タスポを利用したがらないユーザーが多いからと言って、顔認証はその解決策にはなりません。
Re:いい事考えた! (スコア:1)
Re:いい事考えた! (スコア:1)
自作自演対応CPU
4人まで対応です!
みたいな。