新しいblogに移行しました

新ブログ "All Yout Bugs Are Belong To Ass" に移行しました!

2010-04-01

[Security]"Shareaholic for Firefox" leaks your online activity.

ShareaholicというFirefox pluginがあります。
これは、今見ているページをTwitterやtumblrに簡単にpostできるというものです。
しかし、勝手に情報を http://dcs.consumerinput.com/ に漏らしちゃうんですね。

詳細は暇を見て追記します。

4/4 追記
面倒ではない範囲で検証しました。

環境


まず、手元の環境を晒しますね。

  • OS:Ubuntu 9.10

  • ブラウザ:Firefox 3.5.8



準備


検証のために、こちらのテストページ(http://yellowstore.dip.jp/test.html)を用意しました。


また、通信中のHTTPヘッダを記録するツールとして、Live HTTP Headersというプラグインを使用しました。

手順


以下の手順を、それぞれShareaholicが有効である場合と、無効である場合の両方で実施しました。

  1. まず、Live HTTP Headersを起動します。

  2. 次に、テストページにアクセスします。

  3. Live HTTP Headersに記録されたHTTPヘッダをテキストファイル等に保存します。



結果


以下のような結果となりました。

Shareaholic無効


Shareaholicは無効です。

その結果、Live HTTP Headersに記録されていた内容は以下のとおりでした。

http://yellowstore.dip.jp/test.html



GET /test.html HTTP/1.1

Host: yellowstore.dip.jp

User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; ja; rv:1.9.1.8) Gecko/20100214 Ubuntu/9.10 (karmic) Firefox/3.5.8

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: ja,en-us;q=0.7,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

If-Modified-Since: Sun, 04 Apr 2010 06:02:04 GMT

If-None-Match: "325e8f-85-48362f3a97e2f"

Cache-Control: max-age=0



HTTP/1.1 304 Not Modified

Date: Sun, 04 Apr 2010 06:02:42 GMT

Server: Apache/2.2.12 (Ubuntu)

Connection: Keep-Alive

Keep-Alive: timeout=15, max=100

Etag: "325e8f-85-48362f3a97e2f"

Vary: Accept-Encoding

----------------------------------------------------------



何度かリロードしてた為ステータス304が返されていますが、特に何も変哲はありません。

Shareaholic有効


では、Shareaholicを有効にしてみましょう。


その結果、記録されていた内容ですが…

http://yellowstore.dip.jp/test.html



GET /test.html HTTP/1.1

Host: yellowstore.dip.jp

User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; ja; rv:1.9.1.8) Gecko/20100214 Ubuntu/9.10 (karmic) Firefox/3.5.8

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: ja,en-us;q=0.7,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

If-Modified-Since: Sun, 04 Apr 2010 06:02:04 GMT

If-None-Match: "325e8f-85-48362f3a97e2f"

Cache-Control: max-age=0



HTTP/1.1 304 Not Modified

Date: Sun, 04 Apr 2010 06:06:55 GMT

Server: Apache/2.2.12 (Ubuntu)

Connection: Keep-Alive

Keep-Alive: timeout=15, max=100

Etag: "325e8f-85-48362f3a97e2f"

Vary: Accept-Encoding

----------------------------------------------------------

http://dcs.consumerinput.com/fast-cgi/MI?ver=3ss&userid=30789874083664180®istrar=shr&d=http%3A%2F%2Fyellowstore.dip.jp%2Ftest.html



GET /fast-cgi/MI?ver=3ss&userid=30789874083664180®istrar=shr&d=http%3A%2F%2Fyellowstore.dip.jp%2Ftest.html HTTP/1.1

Host: dcs.consumerinput.com

User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; ja; rv:1.9.1.8) Gecko/20100214 Ubuntu/9.10 (karmic) Firefox/3.5.8

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: ja,en-us;q=0.7,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive



HTTP/1.1 200 OK

Date: Sun, 04 Apr 2010 06:06:56 GMT

Server: Apache/2.2.3 (Debian) mod_python/3.3.1 Python/2.5.1 mod_ssl/2.2.3 OpenSSL/0.9.8c

Keep-Alive: timeout=5, max=500

Connection: Keep-Alive

Transfer-Encoding: chunked

Content-Type: text/xml

----------------------------------------------------------



ギョギョギョーッ!!!ななな、何か変なリクエストヘッダが吐かれてる~ッ!!!!
…っと、あまりの事にハコフグ帽子をかぶったオネエ系キャラっぽくなりましたが、要するにこの部分こそShareaholicのマズいところなんですね。

所見など


実際のところ、dcs.consumerinput.comに送られる情報については詳しく確認していませんが、リクエストのたびに、そのURLを付加して別のホストにリクエストを送るなんて事は、そもそもユーザーのオンラインでの行動を追跡する以外には考えにくいと思います。
それから、今回はLive HTTP Headersというプラグインを使用しての検証としましたが、もっと厳密に確認するなら、tcpdumpなどのパケット解析ツールを用いるべきでしょう。面倒なのでやりませんけどね。
とりあえずShareaholic使うのは危険なので止めといた方が無難ですね。

0 件のコメント: