CVE-2014-3566問題のまとめ

alkoshikawa 10,416views 更新:2014年10月17日

opensslのPOODLEで脆弱性が見つかったとのことで、
SSLv3の根本の問題なので完全にFixするにはopensslの更新だけで済むところではないようです。
https://access.redhat.com/ja/node/1232403

現在提示されている対策方法は
・SSLv3を無効化する
・TLS_FALLBACK_SCSVを使う
の2つです。

SSLv3無効化するとレガシーなブラウザで閲覧できなくなってしまうため、
TLS_FALLBACK_SCSVを使う方を推奨しているようです。

TLS_FALLBACK_SCSVはクライアントがSSL接続がコケたときにSSLv3にダウングレードして再接続する機能を無効化するもので、意図せずにSSLv3を使ってしまうケースをはじくことができるようです。

SSLv3が使われてしまうブラウザは
・IE、FirefoxでTLSの利用が無効に設定されているブラウザ
(最新版はtlsがデフォルトになっている、IE6とかfirefox1あたりは設定を確認した方が良いかと思います)
・ドコモのi-mode2.0未満など(au, softbankなどは不明)
というところでかなり古いものですが、若干まだ使われてそうな状況です。

TLS_FALLBACK_SCSV対策をするには、AmazonLinux, Centosではopensslを更新しサービス再起動です。

yum update openssl
service httpd stop && service httpd start
service nginx stop && service nginx start

対応済みRPM

AmazonLinux
openssl-1.0.1j-1.80.amzn1

CentOS
openssl-0.9.8e-31.el5_11
openssl-1.0.1e-30.el6_5.2

検証方法

openssl s_client -connect localhost:443 -fallback_scsv -no_tls1_2
140735103538016:error:1407743E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert inappropriate fallback:s23_clnt.c:770:

というのが出ない場合は対策されていない状態です。

SSLv3の無効化の方は

[apache]

ssl.conf
---
SSLProtocol all -SSLv2
↓
SSLProtocol all -SSLv2 -SSLv3
---
service httpd restart

[nginx]

nginx.conf
---
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
---
service nginx restart

などです。

参考 https://dwradcliffe.com/2014/10/16/testing-tls-fallback.html

追記2014/10/20 TLS_FALLBACK_SCSV対策部分をちょっと変更しました。

コメント

  1. Hirai Sumito のコメント (2014年10月17日)

    opensslをupdate後、apacheで
    TLS_FALLBACK_SCSVを有効にするにはですが
    https://www.ssllabs.com/ssltest/index.html
    で確認したころ
    service httpd restartでは反映されず、
    service httpd stop && service httpd start
    をしたら反映されました

  2. alkoshikawa のコメント (2014年10月20日)

    コメントありがとうございます!
    Apacheのモジュール更新の反映はrestartでは効かないケースがあるようですね、修正いたします。

  3. Hirai Sumito のコメント (2014年10月20日)

    こちらこそ詳しい対策情報ありがとうございます。CentOS6系はrestartでOKでしたが、どうもCentOS5系がstop/startしないと効かないようでした。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません