Web Server 6.1 SP12 がアップグレードされ、SSL/TLS の再ネゴシエーションに関する脆弱性 (http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2009-3555) への対策が施された NSS 3.12.5 が含まれるようになりました。
この脆弱性は、現在の SSL/TLS 再ネゴシエーションプロトコル定義の不備によるものです。Web Server 実装のバグではありません。そのような理由により、この脆弱性に対する実装レベルの修正は提供されません。Web Server を攻撃から守るための唯一の回避方法は、再ネゴシエーションを完全に無効化することです。
したがって、Web Server 6.1 SP12 では SSL/TLS 再ネゴシエーションのすべての使用が無効になっています。クライアントまたは Web Server のどちらかが既存の SSL/TLS セッションで再ネゴシエーションをトリガーしようとすると、接続は失敗します。
SSL/TLS 接続が最初に確立されたあと、しばらく時間が経ってからクライアント証明書を取得する目的には、再ネゴシエーションを使用するのが一般的でした。現在では、Web アプリケーションがこの方法でクライアント証明書を取得しようとしても失敗します。
初期の接続ハンドシェークの間にクライアント証明書を取得する処理は、現在も正常に機能します。このモードは、server.xml で client-auth 要素を「required」に設定することによって設定できます。
<http-listener> <ssl> <client-auth>required</client-auth> </ssl> </http-listener> |
Web Server 6.1 の将来のアップデートでは、IETF が新規のプロトコル拡張の設計を確定した時点で速やかに、安全な再ネゴシエーションプロトコルを実装する予定です。NSS_SSL_ENABLE_RENEGOTIATION=1 のように環境変数を設定することにより、脆弱性のある SSL/TLS 再ネゴシエーション機能を再び有効にすることが可能です。このモードは CVE-2009-3555 で説明されている攻撃に対して脆弱であることが確認されています。