SSLv2 はヤバイか?

FreeBSD の SA が出ていた。内容は、 OpenSSL に関するものだった。

これによると、 SSL_OP_MSIE_SSLV2_RSA_PADDING が有効にされている場合、サーバとクライアントが、 SSLv3 に対応している場合でも、プロトコルバージョンを攻撃者が強制的に SSLv2 に落とし、結果、 SSLv2 が抱える弱点により、その通信内容を読んだりされるという可能性があるそうな。
SSLv2 については、我らが愛するひろみちゅの日記で最近取り上げられていた記憶も新しいが、具体的にはどれぐらいの脅威や危険性を秘めているのかがピンとこない。
ぶっちゃけて言ってしまえば、今回の FreeBSD の SA は適用に値するか、しないかの判断が難しいのだ。なにせ、 buildworld を行った上で、 portsソースコードから導入した(OpesSSLライブラリを使用する)アプリケーションの再コンパイルまで必要なのだから。
そんなワケで、 SSLv2 はどれぐらいヤバイかを調べてみる必要が生じた。とりあえず、愛しのひろみちゅの日記を参照すると、こう書いてあった。

SSL 2.0では、プロトコルの冒頭部分で使用する暗号の種類を決める際に、その部分が通信路上で改竄される攻撃を受ける可能性があり(なにしろまだSSL通信は始まっていないのだから)、それによって使用する暗号強度をダウングレードさせられる危険性などの問題があった。SSL 3.0では、この問題を解決するために冒頭の最後で改竄がなかったかをハッシュ値で確認するよう対策されるなど、改善が施されている。

問題は、その弱点を悪用した攻撃の難易度だが、果たしていかほどのものなのだろうか。