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は既に期限が切れているので、動きません。