Robert Graham氏が2007年のBlackhatでウェブ2.0が安全でないことを示した際にも、少なくともGoogleのGmailのSSLモード(HTTPS)はサイドジャックを受けることはないだろうと考えられていた。しかし、この思いこみはGraham氏の最新のブログ記事によれば間違いだったようだ。SSLを使っていても、Graham氏のツール『Hamster』や『Ferret』を使えば(あるいは手順は難しくなるが、『Wireshark』とMozillaのクッキーエディタを使っても)、Gmailのセッションを乗っ取ることができる。
サイドジャックはGraham氏が同氏のセッション乗っ取り手法を説明するときに使う言葉で、この手法を使うと、ユーザーがパスワードを再入力しなくてもアカウントに自動的にログインできるように保存されたクッキー情報を使っている、ほとんどすべてのウェブ2.0アプリケーションを破ることができる。任意のラップトップを使って無線の信号を受信し蓄えることで、攻撃者は複数のユーザーのクッキーを入手することができ、そのユーザーのウェブ2.0アプリケーションを利用できる。実際にはパスワードはクラックも盗難もされていないにも関わらず、クッキーがGmail、Hotmail、Yahooなどのウェブ2.0アプリケーションへのアクセスを得るための一時的な鍵の役割を果たす。攻撃者はユーザーがAmazonでどんな本を注文したか、Googleマップでどこに住んでいるかといったことを知ったり、電子メールのsubject行のアカウントから電子証明書を入手したり、他にも多くのことができる。
SSL httpsモードのGmailではすべてが暗号化されるため安全だと考えられていたが、GmailのJavaScriptのコードでは、httpsが使えない場合、暗号化されないhttpモードにフォールバックすることがわかった。これは実際によくあるシナリオで、無線LANのホットスポットにラップトップを接続して、ユーザーがサインインする前にGmailを開くと、ラップトップはGmailに接続しようとするが失敗する。この時点で、GmailのJavaScriptは暗号化されていないhttpモードでの通信を試み、もしそこで誰かがデータを捕まえたらゲームオーバーというわけだ。
本当に残念なことは、Google Gmailはウェブ2.0アプリケーションの中で「ましな」ものの1つであり、それでもユーザーが実際にSSLモードを使うことを選択している場合にさえセキュリティが正しく守られないということだ。MicrosoftのMSNとHotmailやYahooなどの他のアプリケーションはSSLモードを持ってさえいない。それらのアプリケーションは最初の認証とサインインの際にSSLモードを使っているが、ユーザー認証が終わるとすぐに暗号化されていないモードに移行してしまうため、意味がない。
現時点では、データリンク層のセキュリティを備えた安全な無線LANを使っているか、VPNを使っていてすべてのトラフィックをVPNゲートウェイ経由で流しているのでなければ、暗号化されていない無線LANではクッキーを使うどんなウェブアプリケーションもサイドジャックの対象になるということだ。
この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部が日本向けに編集したものです。海外CNET Networksの記事へ