Hatena::ブログ(Diary)

最速転職研究会

2012-02-20

GoogleがSafariの設定を迂回してトラッキングしていたとされる件について

00:24 | GoogleがSafariの設定を迂回してトラッキングしていたとされる件についてを含むブックマーク

※この記事の完成度は85%ぐらいなので後で追記します。

合わせて読みたい。

一番上のJonathan Mayer氏の記事については純粋に技術的なレポートなので、特におかしなことは書かれていない。元はといえばSafariCookieブロック機能が狂っている件、それを利用しCookieをセットしている広告会社という技術的なリサーチなので、英語と技術的な内容について抵抗がない人はまず最初に読んだ上で(WSJとの差分について)判断すべき。この記事は技術的な内容を含むので難しいです。内容が理解出来ない場合は難しいということさえ分かればいいです。

WSJの日本語版には

グーグルは特別な暗号を使い、サファリで初期設定されているトラッキング拒否機能に設けられた例外事項を利用する方法で、利用者のコンピュータや多機能携帯電話「iPhoneアイフォーン)」などにクッキー(追跡用の小さなファイル)をインストールしていた。

とある。特別な暗号などと、随分物騒な物言いだが、原文はspecial computer codeだったりする。WSJが書くと、Safariの仕様上の隙をついて、Googleや広告会社がトラッキングをしている(Googleはそれを否定)という論調になっている。素直に読んだら悪事を暴かれたGoogleが言い訳をしていると、そんな風に捉えてしまう人が多くいるのではないでしょうか。この問題がメディアに取り上げられたことは大いに意義があるのだけど、Googleに関しては批判すべきポイントがズレまくっている。問題提起は結構なのだが、何が行われているのかも正確に理解すること無く(理解した上かもしれないけど)、ユーザーの不安を煽りたて、憶測で企業を批判する行為がまかり通ってしまうことのほうがよっぽど問題なのではないかと思う。

ざっくりとした解説

その背後にある技術的な背景

事前に持っていた認識

WSJの取材後に行われたこと

  • Google: この記事執筆時点で、doubleclick.netがそもそもSafariに対してset-cookieを発行しなくなった(UserAgentで判別) そうしなければ「広告Cookieブロックするはずなのにされてないじゃないか!!」と文句を言われてしまうから。
  • Apple: 「一部のサードパーティーSafariプライバシー機能を迂回していることは認識しており、そのようなことを阻止すべく取り組んでいます」という回答を出した。

Google行った対応はどういう意味を持つのか

  • 明示的にAds Preference Managerで「オプトイン」をしなければターゲティング広告が使えなくなった。
  • Cookieが有効かどうか(これはサードパーティCookieになる)を調べるためのCookieが、Safariの仕様のせいで間違ってセットされてしまうことがあるからだ。

ディスプレイ広告におけるGoogle +1ボタンの仕組み

このことから、自分は以下のように推測するだろう。

  • その人が確かに自分の意志で+1ボタンを表示する設定を選択したのかを確実に判別するために、Googleログイン機構を使ってdoubleclickにリダイレクトをしている
    • これを行わないとCSRFAdsenseに対する+1ボタンの表示設定が変更されてしまう
  • もしDoubleClick側で_drt_に保存された文字列からGoogleアカウントの情報を参照できるのであれば、+1ボタンに関する設定が、その都度反映されてもおかしくないが、そのようにはなっていない。
  • なので、_drt_ は純粋に広告に関する設定を一時保存するためのCookieであると(自分はGoogleをある程度信頼しているので)考えている
  • Cookieに直接設定を保存する選択肢もあっただろう。plusone=1というような。
  • DoubleClick側でDoubleClick cookieGoogleアカウントを関連付けていない、ということを証明することは難しい。
  • なぜならGoogleサーバー側で何をやっているのかは、ユーザーからは分からないから。

Safariにおけるワークラウンド処理に意味はあったのか?

Safariデフォルト設定では、doubleclick.netドメインに対して「+1ボタンを有効にしているかどうか」の設定を反映させることが出来ない。なので、form送信にするというバッドノウハウを使用した。その結果、意図せずに「トラッキング目的のcookieもセット可能な状態になった」これがGoogleの言うところの「予期せぬ挙動だった」ということ。

form送信を使用しなくても、doubleclickのcookieがセットされるという状況は発生する。

  • Safariの開発メニューでUserAgentをFirefoxに変更する
  • Ads Preferences Managerを開く。何回かリロードしてもDoubleClick idがセットされないのを確認する。(doubleclick.netに一時的なcookieが保存される)
  • Google Adsenseを掲載しているサイトを適当に訪問する。
  • DoubleClick idがセットされているのを確認する。

この「form送信にするというワークアラウンドと無関係に」どのみち一度でも広告をクリックしたり、Ads Preferences Managerを訪問するなりすれば、ファーストパーティCookieとしてDoubleClickのcookieがセットされ、トラッキングされる状態になる。

これが、WSJ曰く

グーグルインストールしたクッキーは一時的なもので、12〜24時間で効力を失う。しかし、ときには幅広くトラッキングされてしまうこともあった。サファリの技術的な「癖」でクッキーが1つでもインストールされると、簡単にほかのクッキーがインストールされるようになってしまうからだ。

はいはい、じゃあこの挙動を知っていたWeb技術者だけが石を投げて良いですよ、ということになる。GoogleSafariに対して「トラッキング目的でない(Googleの主張)」Cookieをセットするためにフォーム送信というバッドノウハウを使ったが、批判を受けたため今度は「トラッキングCookieSafariにセットしないために」Safariを特別扱いして、Safariの場合だけCookieが有効かどうか判別するtest用のCookieすら送らないようになった。そうしないと「広告Cookieをブロックしてるはずなのに、いつのまにかdoubleclick cookieSafariに設定されている」という状況になってしまうから。

というわけで整理すると

  • doubleclickのトラッキング目的である "id" cookieを受け入れやすくするために、この技術を使ったのではないか? → ハッキリ言って無茶あるよ、Safariの挙動は元々ザルだから、そんなことをする必然性はない
  • _drt_という名前のCookieは何を意味しているのか?トラッキング目的ではないか? → 検討の価値がある

Appleの取れる対策はどういったものがあるのか

Safariの挙動については以前書いたとおり。

http://d.hatena.ne.jp/mala/20111125/1322210819

デフォルトで「サードパーティCookieをブロックする」と謳っているSafariだが、抜け道を作っておかないとSafariデフォルトの設定では動作しなくなるWebサイトが多く発生することになる。Appleは「阻止すべく取り組んでいる」と表明しているが、Safariのこの挙動は、最早、副作用なしに変更することはできない状況になっている。これは単なる欠陥という話ではないし、ソフトウェアバグというものは、副作用なく不具合だけを修正することが出来るとは限らない。Safariの挙動が不適切だと思うのであれば、サードパーティCookieに依存したWebサイトを作ってきた開発者も非難されなくてはいけない。(Facebookのlikeボタンとか)

Appleの取れる対策はいくつか考えられるだろう。

ブラウザ全体の傾向としてはデフォルトの挙動は「Cookieは全て受け入れる」「プライバシーを気にする人はDo Not Track」ということになるだろう、と予想している(Firefoxの辿った道)

Safariについては、1を行いつつ、4,5,7あたりに落ち着くのではないかと予想している。

Googleプライバシーポリシー変更にあたってメディアが注視すべきポイントはどこなのか?

  • Adsenseで使っているdoubleclick.netのCookieは「個人を特定しない」ことをポリシーとして、Web履歴の収集と、それを使った趣味趣向属性の推測を行なっている。
    • これはDoubleClick訴訟の影響があるためで、別経路で入手した個人を識別可能なデータとのリンクが制限されている。
  • にもかかわらず、Ads Preferences Managerでは、doubleclick.netからgoogle.comへのリダイレクトによって、doubleclickのcookie情報がgoogle.comに受け渡されている。
  • そして、Adsenseにおいては、google.comからdoubleclick.netに対して「Googleアカウントに保存されている設定情報」を受け渡している。
  • ここで _drt_ cookieから参照可能になるGoogleアカウント情報がどのようなものであるのかは、ユーザーからは検証のしようがなく、透明性は無い。

google.comとdoubleclick.netのCookie交換は、気安く行われて良いものではない。なぜなら、個人を特定しないことを条件としてGoogleAdsense経由で訪問者のWeb履歴を収集し、趣味趣向や属性を判別し、広告に利用しているからだ。Googleは個人を特定しないdoubleclick.netの「匿名のWeb履歴情報」と、Google利用規約に同意をしてユーザーの許可を得た上で有効化されたgoogle.comが持っている「検索履歴機能、Web履歴機能」を持っている。これらは似て非なるもので、どうせ「Googleには個人情報を集められまくってるのだから」といって同一視して良いものではない。今まで「個人を特定されることは無いから」として許容されてきたものが、ある日突然Googleアカウント(SNSとして利用しており実名登録、詳細なプロフィールが入力されている)とリンクされることになりました、といったら、それは世間に受け入れられるものではないだろう(少なくとも自分は嫌だ)

なので、Googleの「お客様の同意なしに、DoubleClick Cookie 情報を、個人識別情報と結び付けることはありません。 」というポリシーがきちんと守られているのかを監視しなくてはいけないし、DoubleClick Cookie 情報を、個人識別情報と結び付けているのではないかと、疑いがかかるような不適切な実装は非難されなくてはいけない。

しかし、自分がGoogleの立場であるならば、このようにも考えるだろう。

  • 匿名化されたGoogleのidを受け渡して、広告に関する設定や、ユーザーが広告に使っても良いと許可したプロフィール情報や、本人や友人が+1を押した広告の一覧などに「限定して」アクセスできるようにする。
  • 直接的にGoogleアカウントをDoubleClickと紐付けるのは「ユーザーの許可を得た上で」行わなければならないが、個人を特定できないようにしたうえでGoogleアカウントの情報を参照することは制限されないのではないか?
    • 現に+1ボタンを表示するかどうかの設定に関してはgoogle.comドメインから受け渡しているわけだし、これに対する反発が少ないのであれば、次のステップに進めるだろう。
  • AdsenseGoogleアカウント情報を使うことで、どの程度の広告の精度向上が見込めるのかのテストをし、結果がよろしかったらユーザーに対して透明性の確保と選択の自由を与えた上で広く有効化しよう。

http://support.google.com/adsense/bin/answer.py?hl=ja&answer=187844

また、ページにアクセスしたユーザーには、そのユーザーのソーシャル コネクションが +1 した広告が表示される可能性が高くなります。

とあるので、既にそういったことが行われていると考えても良いかもしれない。

ユーザーの反発が大きければ、そもそもこういうことは出来ないよね、ということになるし、その結果リアル人格に基づいたターゲティング広告のほうが実は効果的であって市場の選択の結果Facebookに惨敗する結果になっても仕方ない。FacebookFacebookでリアル人格に基づいたターゲティング広告にどういったリスクがあるのか、周知されなくてはいけないだろう http://d.hatena.ne.jp/mala/20111202/1322835191

FAQ

  • 結局何が起きていたの? → 1.Googleトラッキング目的ではないCookie(_drt_)をセットしたら 2.Safariの仕様が原因でトラッキングCookie(id)もセットされた
  • Googleはこれを意図していた? → 1は意図的に行った 2は予想外だったと主張している
  • 最終的にトラッキングCookieをセットするため計算づくで行われた可能性は? → 可能性だけならなんとでも言えますが、そんなことをする必然性は薄いです
  • どういう影響があったのですか? → Safariユーザーのうち、広告をクリックしないユーザーに新規にトラッキングCookieがセットされる確率が上がりました。
  • 以前からSafariトラッキングCookieはセットされていた? → 元々、広告を一度でもクリックすればトラッキングCookieがセットされ、維持されることになっていたでしょう
  • 他の広告会社については → トラッキングCookieをセットする目的でやってるかもしれませんが、興味が無いので詳しく調べていません。
ブラウザの仕様と倫理的問題
_drt_ cookieについて
  • _drt_ という名前のCookieは何に使われているの? → 少なくとも、ディスプレイ広告(画像使った広告)に+1ボタンを表示するかどうかの設定に使われています
  • _drt_ cookieトラッキング目的のもの? → 違うと思います。DoubleClickのトラッキングは "id" cookieで行われています。
  • _drt_ cookieは+1ボタンを表示するためだけのもの? → 違うと思います。それならランダム文字列にしないでplusone=1でいいからです。
  • じゃあ結局何の目的でどういう風に使われてるの? → Googleが積極的に情報を公開しなければ、外部からは推測しかできませんし、内部でGoogleのidと紐付いていてトラッキングに使われている可能性だってあります。もしもそういったことが行われているとすれば問題なので「そもそもユーザーから見て何が行われているのか検証できないような、疑いがかかるような実装は避けるべき」で「FTCが調査するのも良いだろう」と考えていますが、憶測に過ぎないことをメディアが断定的に語って批判するのは避けるべきだと考えています。

IEプライバシー機能も迂回していたとされる問題

Microsoftが自分たちを棚にあげて便乗してGoogleを批判しており、タチの悪いジョークです。P3Pが最早機能しないことは周知の事実で、ブラウザ関係者であれば尚更です。

補足すると

Wall Street Journalが発端となった過去の問題について

  • あとでかく

この件を取り上げた日本のメディア

  • あとでかく

まとめ

何が行われていて、どういったリスクがあるのか正確に報道されなければ正しい世論形成が行われなくなります。この件でまともな報道がなされたニュースサイトはほぼ皆無です。

通りすがり通りすがり 2012/02/22 11:11 IEの件についても解説よろしく。
信者さんw

malamala 2012/02/22 13:37 > 通りすがり様

この度はコメントありがとうございます。
いつも通りすがり様のコメントを興味深く拝見しております。
平日休日昼夜を分かたぬ通りすがりっぷりに頭の上がらぬ思いです。
「信者さんw」とのことですが、差し支えなければ何信者だと思われたのか、
後学のために思慮浅薄な私めに教えて頂ければ幸いでございます。

何卒よろしくお願いいたします。

mayukimayuki 2012/02/23 14:17 あれ、IEで「信頼済みゾーン」に入れなくともプライバシー設定からサイト(ドメイン)ごとのCookieのブロック・許可の設定できませんか?(6,7,8ならステータスバーの目のアイコン→概要ボタンから)

malamala 2012/02/23 15:45 > mayuki
すいません、勘違いしてました。直しました。

トラックバック - http://d.hatena.ne.jp/mala/20120220/1329751480