ガラパゴスに支えられる携帯サイトのセキュリティ
2010年2月24日(水曜日)
ガラパゴスに支えられる携帯サイトのセキュリティ
公開: 2010年3月6日14時20分頃
モバツイ (www.movatwi.jp)作者のえふしんさんが、こんなつぶやきを。
もろもろセキュリティのことまで考えると、携帯サイトはガラパゴス(国内で閉じてる)の方が良いんじゃないかなぁ。
携帯サイトは、閉じられた環境であることを前提として作られている場合があります。すなわち、以下のような前提です。
- 利用者が自由にHTTPリクエストをしたり、リクエストパラメータを改変することはできない
これはPCサイトでは全く通用しない話です。通常のインターネットからの接続では、telnetなどで好きなデータを送信できますので、通信内容はいくらでも改変できてしまいます。
PCサイトの場合は、それでも問題ありません。攻撃者はリクエストを改竄できますが、ターゲットになりすますためには、ターゲットの識別情報を入手する必要があります。PCサイトで標準的に使われる識別方法は、Cookieを発行することで端末(ブラウザ)を識別するという方法です。Cookieは発行したサイトにしか送出されないため、何らかの理由でCookieが漏れない限り、攻撃者はターゲットの識別情報を知ることができません。
※漏れる原因の一つがクロスサイトスクリプティング脆弱性です。
つまりPCサイトは、「リクエストは改竄され得るが、識別情報が漏れない」ということを前提とした設計になっています。
しかし、携帯サイトは違います。特に顕著なのは、勝手サイトにおける「かんたんログイン」の仕組みです。「かんたんログイン」はiモードIDなどの契約者固有IDを使用することで、ノーパスワードでのログインを実現するものです。
PCサイトのCookieが発行ドメインにしか送られないのに対し、契約者固有IDは全てのサイトに同一の値が送られます。つまり、最初から漏れているわけで、漏れないことを前提にした設計はできません。そのため通常、かんたんログインを使用する携帯サイトは、3キャリアのゲートウェイからのアクセスだけを通すようにしています。キャリアの提供する端末ではリクエストを改竄することが難しいため、リクエストが改竄されていないことが期待されます。
つまり携帯サイトは、「識別情報は漏れるが、リクエストは改竄されない」ということを前提とした設計になっているのです。携帯サイトは、リクエストが改竄されない世界でのみ生存することができる希少種で、そう考えると、ガラパゴスという言葉はピッタリなのかもれしません。
ところが最近、このガラパゴスの世界に、今までとは異なる「種」が発生しました。それがJavaScript対応端末です。JavaScript対応の端末は、XmlHttpRequestで任意のリクエストを送出したり、iframeを使って別サイトのコンテンツを読み取ったりする機能を持ちます。これが、docomo端末のDNS Rebindingなどの新たな問題につながっています。今のところ問題が公表されているのはdocomoだけですが、他社の端末にもJavaScriptやXmlHttpRequestに対応したものがあり、それらもやはり問題に直面しています。
これからも、そういった問題は表面化してくるでしょう。また、将来的には、JavaScript以外の新機能が出てくる可能性もあります。すぐには難しいでしょうが、将来的には、ガラパゴスでなくても生き残れるような方向に転換して行かざるを得ないのかもしれません。
……ちなみに別の話ですが、携帯サイトの場合、パスワードを入力するのが非常に面倒だという問題もあります。パスワード入力を頻繁に求めれば求めるほど、ユーザーは簡素で入力しやすいパスワードを設定しようとします。パスワードに頼る認証もなかなか難しく、悩みの種が尽きないところです。
- 「ガラパゴスに支えられる携帯サイトのセキュリティ」にコメントを書く
- 前(古い): 管理画面を別ドメインに分ける
- 次(新しい): 脆弱性報告者の心構え