SSLv3
のPOODLE
脆弱性に関するさまざまなフォーラムを読みました。サーバーでSSLv3
を無効にし、TLS_FALLBACK_SCSV
をサポートすることをお勧めします。
TLS_FALLBACK_SCSV
でApache2.2
のサポートを有効にする方法
TLS-FALLBACK-SCSVを自動的にサポート のopensslの最新バージョンにアップグレードします。 Apacheはそれを使用します。
https://www.openssl.org/news/secadv_20141015.txt から:
OpenSSL 1.0.1 users should upgrade to 1.0.1j.
OpenSSL 1.0.0 users should upgrade to 1.0.0o.
OpenSSL 0.9.8 users should upgrade to 0.9.8zc.
Debianおよびその他のディストリビューションは、OpenSSLにTLS-FALLBACK-SCSVアップデートのバックポートを展開しています。
アップデート後にApacheを再起動します。
SSL Labs は、TLS_FALLBACK_SCSV
。
https://www.ssllabs.com/ssltest/analyze.html?d=google.com&s=74.125.239.96&hideResults=on 注意事項「TLS_FALLBACK_SCSVがサポートされています」
私の知る限り、これはApacheの設定ではなく、opensslの動作です。
OpenSSLはTLS_FALLBACK_SCSVのサポートを追加し、アプリケーションがMITM攻撃者がプロトコルのダウングレードを強制する能力をブロックできるようにしました。
https://www.openssl.org/news/secadv_20141015.txt
Debianでは、libsslをアップグレードせずにopensslをアップグレードできます。本当にlibsslをアップグレードする必要があります。 Apacheはlibsslを使用します。
TLS_FALLBACK_SCSVを実装する最新のOpenSSLパッケージにアップグレードします。次に、Apache構成でSSLv3も無効にします。
SSLProtocol all -SSLv2 -SSLv3
「askubuntu」スタックサイトのこの回答では、さらに詳しく説明し、さまざまなサーバーをこのために構成する方法についての回答があります。
両方を行う必要はないはずです。 TLS_FALLBACK_SCSVは、ダウングレード攻撃を防止するメカニズムですが、サーバーがSSLv3(またはv2)接続を許可しない場合は必要ありません(ダウングレードされた接続が機能しないため)
編集(フィードバックを組み込むため):TLS_1.2にダウングレードされる接続を回避するのに役立つので、技術的にTLS_FALLBACK_SCSVはSSLが無効の場合でも有用です。ただし、脆弱なSSLv3がオフになっているため、これはPOODLEから防御するために不要です。
TLS_FALLBACK_SCSVがPOODLEに役立つ唯一の理由は、SSLv3クライアント(本当に古いIEバージョンか何か)をサポートする必要がある場合です。これらのクライアントは依然として攻撃に対して脆弱ですが、それをサポートする最新のクライアントオプションは、ダウングレード攻撃に対して安全です。
構成ファイルに次の行を追加するか、SSLProtocolで始まる既存の行を置き換えます:SSLProtocol All -SSLv2 -SSLv3
次に、実行します:$ Sudo Apache2ctl configtest && Sudo service Apache2 restart
テスト実行コマンド$ openssl s_client -connect <Host>:<port> -ssl3
Apacheで何も変更する必要がないことを確認できます(少なくともUbuntu 14.04の場合)opensslとTLS_FALLBACK_SCSV
取り組んでいます。
TLS_EMPTY_RENEGOTIATION_INFO_SCSVは魔法の言葉です。詳細については、 http://www.exploresecurity.com を参照してください。これは次のとおりです。
TLS_FALLBACK_SCSVは、Client Helloでアドバタイズされる偽の暗号スイートであり、SSL/TLSハンドシェイクを開始します。 SCSVは「Signaling Cipher Suite Value」の略です。暗号スイートを信号として使用するという考え方は新しいものではありません。TLS_EMPTY_RENEGOTIATION_INFO_SCSVは、クライアントが安全な再ネゴシエーションをサポートしていることをアドバタイズできる方法です(CVE-2009-3555に対応)
したがって、最後に、Apacheサーバーが組み込まれたSpring-bootプロジェクトの場合、構成は次のようになります。
server.ssl.enabled-protocols=TLSvx,TLSvx.y....
server.ssl.protocol=TLS
server.ssl.ciphers=TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,TLS_............TLS_EMPTY_RENAGOTIATION_INFO_SCSV
server.server-header="Willi Wonka!"
[〜#〜] ps [〜#〜]-すべてのSpring-boot構成/プロパティを確認するには、こちらをご覧ください: https://docs.spring.io