2013年7月31日水曜日

不正アプリが集めた個人情報、何に使われる?


http://itpro.nikkeibp.co.jp/article/COLUMN/20130725/494092/?ST=security&P=3

不正なアプリケーションによりスマートフォンから抜き取られたデータは、どこに行きどのように使われるのでしょうか?
 ネットエージェントは、アプリがどのような情報をスマートフォンから収集するかを検索できるサイト「secroid」を立ち上げました(図1)。Androidアプリをユーザーが安心してインストールできるように、公式のGoogle Playでは表示されていないアプリの潜在リスクを分かりやすく表示することで、ユーザーの判断する助けになる情報を提供します。
図1●secroidのトップページ
 Androidのユーザーは必ずといっていいほど、Googleにアカウントを持っています。まずGoogle Playでアプリを検索して、インストールする場合にアカウントを使います。Gmailを使っていたり、Googleで検索をしたり、電話帳をGoogleに預けたりするときにもアカウント情報を使います。
 これ以外にも、Google Mapにより位置情報を調べる、Google Analyticsが入っているサイトを訪れる、YouTubeで動画を見る――などの行為をしているときも一つのアカウントにひもづいた状態で、Googleにわたっています。
 真偽のほどはわかりませんが、Googleは最近マスメディアで取り上げられた米国家安全保障機関(NSA)の「PRISM」システムにも、データを提供できる状態になっている可能性が指摘されています。ただGoogleはこれに対する参加を否定しています。
 このように最も多くの個人情報がGoogleに集まりますが、それ以外にも米国のスマートフォン向けに広告を提供している会社が個人情報を収集しようとしています


ユーザーには見えない情報収集モジュールの実態

 Androidのアプリには本体の機能と、その機能を拡張して便利に使えるようにするライブラリ、そして情報収集モジュールというものがあります。情報収集モジュールは、「広告」、ユーザーの操作履歴などを把握する「ユーザーの追跡」、アプリがどういった環境と状況でクラッシュしたかを伝える「クラッシュレポート」、「課金」の4つの機能を含んでいます。
 Androidの無料アプリはほとんどの場合、趣味で作られているわけでなく、企業やそれで生計を立てている個人が開発しています。収益源は主に2種類あり、アプリから有料アイテムを買えるようにする「アイテム課金モデル」とアプリに広告を入れる「広告モデル」に大別されます。ただし、そのほかに実店舗に誘導するクーポンアプリや、PRのためのアプリ、アフィリエイト目的だけのアプリもあります。
 多くの無料アプリは、アプリ内に広告表示枠をつけることにより現金収入が得られる広告モジュールを採用しています。ただし単純に広告を表示するのなら、複雑な機構は要りません。広告を配信する側は、アプリのユーザーのニーズにできる限りマッチした広告を出すことが広告の費用対効果を高められ、広告の媒体価値をあげることを考えます。つまり広告を配信する対象にかかわる情報の量と精度、そしてどの程度まで個人を特定できるかが広告配信を手がける企業の価値を決めるといってもよいでしょう。
 パソコンのブラウザに表示される広告は、一般的には広告表示ページの情報、アクセスするユーザーのIPアドレス、その広告に対するCookieなどによって成り立っています。広告主は、広告表示ページをカテゴライズして、個々のユーザーがどのようなページを見るのかCookieを使って追跡しています。
 こうしてユーザーの属性を分類し、その属性にマッチするように広告を出しています。広告以外にもサービスを手掛けている事業者では、他のサービスで得られた情報を統合して、ユーザーの属性情報を詳細化している場合もあります。これに対して、スマートフォンアプリの広告では、広告を表示するアプリがユーザーを識別する情報を組み合わせ、誰にどの広告を出したのかを分かる仕組みをとっていることが多くあります。
 これはパソコンのCookieの仕組みにもある機能ですが、スマートフォンの場合は端末を識別できるIMEI(携帯電話端末などに割り当てられる固有の番号)、Android ID、Wi-FiのMACアドレスなどが容易に取得できるため、これを活用して情報を利用しています。中には、SIMカードのシリアル番号や、090や080から始まる電話番号自体を識別番号にしているケースもあります。


識別の方法には、他の方法よりも個人を特定しにくいCookieを使っているところもあります。スマートフォン広告では、これらのIDと利用しているアプリ、アプリを利用した時間が記録されるため、これら情報を基に広告を最適化しています。一部の広告はGPS(全地球測位システム)や基地局情報、周辺の無線LANのAP(アクセスポイント)情報により位置情報も収集し、誰がどの端末を使っているかに加えて、「どこで」という情報も追加します。

なぜアプリにたくさんの広告モジュールが入っているのか?

実はいくつかのアプリには、複数の広告モジュールが入っています。アプリには1つだけ広告モジュールがあればよいようにも思われますが、複数のモジュールを使うのは広告の在庫が残っている広告配信会社が、高い広告料を付けてくれるためです。その時々に、最も高い広告料を得られる広告を表示するために、アプリが表示する可能性がある広告モジュールをあらかじめ複数入れているのです(図2)。
図2●secroidで検出した広告モジュール
アプリの中に数多くの広告モジュールが組み込まれていることがわかる
アプリからすると複数の広告モジュールが入るため、モジュールごとにユーザーのどの情報をどう使うのかとか、情報の取り扱いなどが異なってきます。本来であれば広告モジュールを提供する情報収集元がこうした取り扱いを公開する必要があるといえるでしょう。
 手本となるのは、Google自身が提供する「AdMob」ですが、同サービスはGoogle Playと連携しているため、Androidスマートフォンをはじめて使う時点で、ユーザーは知らないうちに情報の活用について同意してしまっています。一部のスマートフォン販売店では、端末を購入した時点で店員がユーザーの代わりにセットアップするため、情報の活用についてその時点で同意してしまいます。この結果、ユーザー本人が同意しないうちに、個人情報を利用されている場合もあるようです。
 Google以外の広告モジュールを組み込んだユーザーがすべてを理解しているかどうかは分かりませんが、それぞれの広告モジュールが各社へ送信している情報や、その取り扱いは異なっています。本来であれば、アプリごとにどのような情報を渡していて、その会社からどの情報を第三者に提供するのかなどがユーザーに知らされるべきでしょう。しかし、それが十分行われているアプリはごく少数です。
杉浦 隆幸(すぎうら たかゆき)
ネットエージェント社長

2000年にセキュリティベンダー、ネットエージェントを創設。2012年、スマートフォン向けの不正アプリ「the Movie事件」で、個人情報漏えいが発生していることを指摘。同年secroidの提供を開始。Enesoluty事件で逮捕に結びつく情報を千葉県警に提供した。


0 件のコメント:

コメントを投稿

自己紹介

自分の写真
東京都, Japan
h-imoto@netyear.net 暇なわけではございません。仕事の一環で収集している情報の共有です!