ESET/マルウェア情報局
Cookieなどのトラッキング技術に潜むリスク
本記事はキヤノンマーケティングジャパンが提供する「マルウェア情報局」に掲載された「トラッキングはセキュリティ的に何が問題なのか?」を再編集したものです。
トラッキングとは?
「トラッキング(Tracking)」を日本語に翻訳すると「追跡すること」となる。そこから派生して、現在では下記3つの業界でそれぞれ異なる意味合いとして使われることが多い。
1. マーケティング業界において、ユーザーの興味の高い広告を効率よく配信するためにユーザーの行動を継続的に追跡し分析すること。
2. 物流業界において、荷物の配送状況を追跡すること。
3. IT業界において、システムの挙動やデータ動向などのログを収集し監視すること。
本記事における「トラッキング」とは、上記1.を前提として説明していく。
電通が発表した資料によると、2018年における日本の広告費はおよそ6.5兆円となっており、そのうちインターネット広告費が占める割合は26.9%と、2008年の10.4%から約2.5倍に増加している。インターネット普及以前の広告効果分析は主に調査会社が行ない、ユーザーに対するモニタリングやインタビュー、あるいは一部の家庭を対象としたテレビ計測機器による調査に限定されていた。しかし、インターネットの普及とCookieをはじめとした計測手法の確立によって、広告の効果分析は大きく変化を遂げることとなった。
Cookieを用いたトラッキング
トラッキングの話に入る前に、Cookieについて簡潔に説明する。極めて単純化して言えば、Cookieとはパソコンのブラウザー上に保存されるごく小さなテキストファイルのことである。もともとこの技術はトラッキングのために開発されたものではない。インターネットの送受信プロトコルであるHTTPは、ファイル転送のためのプロトコルであるためウェブページの閲覧におけるステータス(状態)の変化を記録することができない。そのため、ウェブサーバーとブラウザー間における「ステータスを管理するため」の共通チケットとして、Cookieが開発された。具体的な使用事例を挙げると、会員制ウェブサイトのログイン情報やECサイトのショッピングカート情報などがCookie情報としてウェブブラウザーに記録される。こうすることで、再度同じウェブページを閲覧した際にそのステータスが維持されるという仕組みだ。TwitterやFacebookなどでのログイン維持などにも利用されており、その恩恵にあずかったユーザーも少なくないだろう。
このようなウェブページのステータスを管理するための技術が、インターネット広告やマーケティング手法の変化に合わせ、次第にユーザーのアクセス履歴や行動履歴などの把握にも転用され、一般化していった。近年、トラッキングといえばインターネットにおける行動履歴の追跡を指すのはこうした背景によるものだ。
トラッキングの仕組み
そもそもトラッキングはCookieだけで行なわれているわけではない。いくつかの技術があり、場合によってはそれらを組み合わせて利用される。ではトラッキングはどのようにして行なわれ、どのような情報が追跡されているのだろうか。主なトラッキングの仕組みとしては下記のようなものがある。
・Cookie(ファーストパーティーCookieとサードパーティーCookie)
Cookieは前述のとおりウェブページのステータスを管理するための仕組みである。また、Cookieは2種類あり、「ファーストパーティーCookie」は閲覧しているドメインが発行するCookieを指し、「サードパーティーCookie」は閲覧しているドメイン以外が発行するCookieのことだ。後者の場合、ユーザーのインターネット上の行動履歴を追跡したり、広告を配信したりするのに用いられることが多い。
・ブラウザーフィンガープリント
フィンガープリントとはそもそも、「指紋」を意味する。その意味合いから転じて、正しさを証明するものとして使われる。Cookieが識別情報をブラウザー上に保存するのに対し、ブラウザーフィンガープリントはブラウザー自体がもつ情報(パソコンのOSやプラグインの設定状況など)からハッシュ値を生成する。そして、そのハッシュ値をもとにブラウザーを識別するという仕組みになっている。
・スマホアプリによるトラッキング
スマホアプリはインストール時に、端末上のさまざまな情報へのアクセス権限が付与される。代表的なものに、位置情報や連絡先、カメラ、ストレージ、センサーなどが挙げられる。このような情報をもとに、スマホアプリは常にユーザーをトラッキングできる状況にある。
・広告識別子(広告ID)
広告識別子とはスマホ端末を識別するためのIDで、iOS端末で利用される「IDFA」とAndroid端末で利用される「AAID」の2種類あり、広告配信のためにのみ使われる。Cookieとの大きな違いは、Cookieがブラウザー単位であるのに対し、広告識別子は端末単位であるということだ。この識別子の存在により、きめ細かなセグメントを施した広告配信などが可能となる。
・SensorID
ケンブリッジ大学の研究者が発表した新しい概念である、SensorID。スマホには「加速度センサー」や「ジャイロセンサー」といったセンサーが搭載されている。こうしたセンサーのデータを細かく分析していくことで、端末を特定することが可能だとされる。
トラッキングによってインターネットにおけるユーザーの利便性は向上している。また、広告主はユーザーの属性や趣味嗜好を分析したうえで、より最適な広告配信を行なえるようになった。しかし、Cookieには住所や電話番号、クレジットカード番号といったさまざまな情報を保存することも可能であり、仮にこのような情報が漏洩した場合には深刻な被害をもたらす恐れがある。
トラッキングを取り巻く潮流
2018年にはEUで一般データ保護規制(GDPR)が施行され、Cookieの取り扱いがより厳密に規定された。日本においても2020年の個人情報保護法改正に向けて、Cookie情報の取り扱いの見直しが進んでいる。こうした潮流の背景には、Cookieをはじめとしたトラッキングによるプライバシーの侵害や、犯罪などのセキュリティリスクに対するユーザーの強い関心が影響している。
現に、2018年にソフトウェア開発を行なうジャストシステムが実施した調査によると、スマホ利用者のおよそ8割がウェブ閲覧履歴をもとにした広告配信を認知しており、そのうち4人に1人は「不快なのでやめてほしい」と回答している。
トラッキングのセキュリティリスク
トラッキングにおけるセキュリティリスクとして代表的なものは、セッションハイジャックとクロスサイト・クッキングだ。ただし、最近ではクロスサイト・クッキングという概念はセッションハイジャックに包有されるようになってきたため、ここではセッションハイジャックに限定し、説明する。
- セッションハイジャック
セッションとはウェブサーバーとブラウザー間における一連の通信処理を指す。セッションハイジャックとはこの通信に関わる識別情報を盗み出し、ユーザーになりすまし不正アクセスを行なうサイバー攻撃の総称である。
・セッションIDの推測
セッションIDとはウェブサーバーがユーザーのセッションを識別するための識別子だ。このセッションIDが容易に類推できるものであった場合、攻撃者は総当たり攻撃などを駆使して特定することが可能になる。また、別ルートで盗み出したセッションIDから複数のセッションIDを生成することもできる。
・セッションIDの窃取
クロスサイトスクリプティング(XSS)などの攻撃によって、ユーザーのブラウザー上で攻撃スクリプトを実行させ、Cookie情報を盗み出す。盗み出したCookie情報からセッションIDを把握し、セッションハイジャックを行なう。
・セッション固定攻撃
セッションフィクセーション(強制)ともいわれる。攻撃者があらかじめ不正な手段で入手したセッションIDを、ユーザーのブラウザーにセットする。ユーザーが知らずにウェブサイトにアクセスしログインすると、そのセッションIDを知っている攻撃者によってユーザーのセッションが乗っ取られてしまう。
セッションハイジャックに加え、サードパーティーCookieに関する問題もある。インターネット上のバナー広告には前述のサードパーティーCookieが設定されており、それを介してユーザーの閲覧情報などが第三者に送信されている。閲覧したページや、訪問回数、あるいは検索キーワード、入力内容やウェブページ上でのクリック箇所などが代表的なものだ。ユーザー自身が、自分に関するどのような情報がどこに送信されているのかを調べることは、専門的な知識があったとしても極めて困難である。そしてこれらの情報のひとつは断片的で個人を特定できないものであったとしても、組み合わせることで個人を特定することも可能だ。
たとえば、SNSで投稿したテキストや画像などはSNSの提供企業によって解析される。そしてその解析結果をもとに趣味・嗜好などがカテゴライズされ、より適切な広告配信を行なうために利用される。こうした解析情報と会員制サイトに登録された個人情報を、メールアドレスをキーに紐づければ特定の趣味・嗜好が組み合わさった個人情報となる。
スマホアプリの中にも、ユーザーの見えないところで情報を送信しているものも存在する。メールアドレス、写真、位置情報や広告識別子、端末名などスマホアプリが取得できる情報はパソコン以上に多岐にわたる。基本的に、iPhoneもAndroid端末もアプリごとにアクセスできる情報の権限を細かく設定することが可能だ。アプリが要求する権限をむやみに許可するのではなく、それが必要かどうか、その権限がどういった影響を与えかねないのかを熟考すべきだろう。
過度なトラッキングを防ぎ、快適さとのバランスを保とう
トラッキングはインターネットの利用を便利で快適にし、広告主とユーザーとの適切なエンゲージメントに寄与している。しかし、過度のトラッキングによって大量に流通する個人情報は犯罪者にとっては格好のターゲットとなる。過剰なトラッキングを防ぐには下記のような方法が効果的だ。
・ブラウザーでのプライバシー設定
主要なブラウザーではトラッキングに関するプライバシーを設定できるようになっている。たとえば、Chromeの場合は、「詳細設定」から「プライバシー」を選択し、「トラッキング拒否」をオンにすることである程度の制限ができる。SafariにもITP(Intelligent Tracking Prevention)という機能が実装されており、トラッキングを抑制することが可能だ。
・iOSやAndroidのプライバシー設定
Androidではアプリに許可する権限を細かく設定することができる。必要なものだけ設定するようにしよう。また最新のiOSは強力なトラッキング防止機能を有している。たとえば、位置情報を送信するアプリなどがあればユーザーに通知可能な仕組みなどが搭載されている。業界全体のトレンドとしてアンチトラッキング機能の強化が進んでいる。使用している端末のOSを最新版にアップデートすることは、そうした観点からも重要になるだろう。
・広告ブロックツール
信頼できる広告ブロックツールの中には、広告を非表示にするだけでなく、トラッキングをブロックしてくれるものも存在する。このような広告ブロックツールを導入することもトラッキング予防の有効な手段のひとつだ。
・ウイルス対策ソフト
ブラウザーやOSでトラッキング予防策を施したとしても、端末自体がマルウエアに感染してしまえば元も子もない。使用している端末へのウイルス対策ソフトの導入は、最初に取り組むべき対策だ。
最近のインターネットサービスが劇的に利便性を高めた背景に、トラッキングのテクノロジーの貢献があることは間違いない。しかし、自分の趣味・嗜好がトラッキングされた結果、表示される広告や内容に不信感や不快感を抱くユーザーも増えてきている。
メリットもデメリットもあるトラッキングだが、そのバランスをどうとるかはプラットフォーマーや広告主、アドテクノロジーベンダーが負うべき責任だろう。しかし、ユーザー側もその仕組みを正しく理解し、適切に対処することでより快適性は向上し、プライバシー保護、セキュリティ向上にもつながるはすだ。このような認識のもと、トラッキングとうまく付き合い、インターネットをより快適・安全に利用してほしい。