■携帯ブラウザのSSL/TLS renegotiation対応の検証メモ
とある案件でSSL/TLS renegotiation機能の脆弱性の問題に突き当たったため検証したメモ。問題の内容と対策はこちらのページ( http://blog.abacustech.co.jp/blogx/entry/40 )がとても詳しいので参照。Webアクセスをするブラウザ(クライアント)とサーバの両方が問題に対応している必要があるので注意。対応状況が簡単に確認できる方法はそれぞれ以下。
※9/27追記 誤解を与えかねないRTがされていたので追記しておきますが、この検証はiOSやWP7のブラウザにSSL/TLS renegotiation機能の脆弱性が残存しているということを意味しません。SSL/TLS renegotiation機能の脆弱性に対してはRFC5746を実装する対処方法と、脆弱性発見当初実施された「SSL/TLS renegotiation機能に非対応とする」という対処方法があり、実際に非対応を選択しているSSLアクセラレータやロードバランサがあることを確認しています。今回実施しているのはあくまで対応か非対応かの検証であり、脆弱性があるかどうかは確認していません(おそらく脆弱性がある場合はデビル画像がチェックで表示されると推測はします…)。誤解のなきようお願いいたします。ちなみに検証をしようと思った動機は、RFC5746非対応の場合エラーになる事象を確認したからであり、スマホブラウザで該当脆弱性を発見したためではありません。
■サーバ側の対応確認
ブラウザでQualys SSL Labのテストページにアクセスし確認したいサーバ名を入力する
https://www.ssllabs.com/ssldb/index.html
出力結果で、Renegotiationの項目が「Secure Renegotiation Supported」になっていればOK
そうでない場合はサーバがRFC5746に対応していないことになる
※脆弱性発見につながるため自身で責任を持って対応可能なサーバに対してのみ行うこと
■クライアント側の対応確認
チェックしたいブラウザで以下のテストページにアクセスする
https://ssltls.de/
表示されたページ内でペンギンの画像のみが表示されればOK
デビル画像が表示されたブラウザは使うのを止めた方がいいかもしれない
■スマホブラウザの対応状況(2011年8月17日現在の最新版で確認)
結果の見方
○:ペンギンのみ表示
△:両方表示せず
×:デビルのみ表示
1)iPhone 3GS (iOS 4.3.5 8L1)
Safari △
iLunascape 3 △
Atomic Lite △
iCabMobile △
Mercury △
Opera Mini 6 ○
Sleipnir △
2)iPad2(iOS 4.3.5 8L1)
Safari △
iLunascape 3 △
Atomic Lite △
iCabMobile △
Mercury △
Opera Mini 6 ○
Sleipnir △
3)001HT(Android2.3.3)
標準ブラウザ ○
FireFox ○
Dolphin HD ○
Angel Browser ○
Opera Mobile ○
Opera Mini ○
SkyFire ○
4)OMNIA7(Windows Phone 7 7392)
標準ブラウザ(IE)△
5)IS12T(Windows Phone 7.5 7720) ※8/27追記
標準ブラウザ(IE)○
6)Nexus One(Android2.3.4 WhisperCore 0.5.2)
標準ブラウザ ○
7)GalaxyTab GT-P1000(Android 2.3.3)
標準ブラウザ ○
8)Eee Pad TF101(Android 3.1)
標準ブラウザ ○
FireFox ○
■まとめ
iOS系は独自実装のOpera Mini以外全滅。WP7もダメ。WP7.5(Mango)では問題ない。Android系は全て問題なかった。この問題に限って言えば、Android端末が最も安心できる選択肢となった。ちなみにssltls.deではStartSSLが利用されているようで、試験中にOpera MobileとWP7系IEのみ(WP7もWP7.5も)証明書対応ができておらず不正警告が表示された。サーバ側では厳密な検証は行っていないが通常OSが最新状態になっていれば問題ないと思われる(CentOS5.6の標準環境+StartSSLでもサーバチェックでBスコアとなり問題はなかった)。この問題では大手でもまだ未対応なサーバが多いらしいのだが、推測するにSSLアクセラレータ等を導入して古いファームウェアのまま動作させているサイトなのではないかと考える。通常は安定して稼働していればあまり手を付けない部分なので必要な対応が遅れている可能性は高いように思われる。事実そのようなサイトをひとつ確認してしまった…。今回の問題はサーバとクライアントの双方で対応されて安全性が担保されるということなので、サーバ運用者はチェックを行い必要に応じた対応をとることをオススメする。
【8/27】IS12Tの発売を受けてWP7.5端末の試験結果を追記して編集。
【9/27】微妙に誤解を招きそうなRTがされていたので注意書きを先頭近くに追記。