服务器SSL不安全漏洞修复方案


关于SSL POODLE漏洞 
POODLE = Padding Oracle On Downgraded Legacy Encryption.是最新安全漏洞(CVE-2014-3566)的代号,俗称“贵宾犬”漏洞。 此漏洞是针对SSL3.0中CBC模式加密算法的一种padding oracle攻击,可以让攻击者获取SSL通信中的部分信息明文,如果将明文中的重要部分获取了,比如cookie,session,则信息的安全出现了隐患。 
从本质上说,这是SSL设计上的缺陷,SSL先认证再加密是不安全的。

如何检测漏洞 
可以是通过在线检测工具https://wosign.ssllabs.com/来进行检测。

修复措施: 
禁用sslv3协议 
不同的web server不尽相同。这边列举主流的服务器的禁用方式

Nginx服务器: 
注意:nginx和openssl套件版本过低可能会导致无法启用新型加密套件和算法,请升级最新版本。 
(openssl1.0.1+版本支持TLS1.1和TLS1.2协议)

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;

复制代码 
apache服务器: 
注意:apache和openssl套件版本过低可能会导致无法启用新型加密套件和算法,请升级最新版本。 
(openssl1.0.1+版本支持TLS1.1和TLS1.2协议)

apache2.X版本:

SSLProtocol all -SSLv2 -SSLv3

SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL

Tomcat服务器: 
JDK版本过低也会带来不安全漏洞,请升级JDK为最新版本。升级JDK风险请安按照系统升级风险酌情考虑。 
(先备份再配置,低版本的配置后有启动不了的风险,请升级tomcat和jdk版本,JDK1.7及以上支持TLS1.2协议)

Tomcat 6 (prior to 6.0.38)

<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
     keystoreFile="keystore/domain.jks"  keystorePass="证书密码"
               clientAuth="false" sslProtocols="TLSv1,TLSv1.1,TLSv1.2"
                ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,
                                TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                                TLS_RSA_WITH_AES_128_CBC_SHA256,
                                TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
                                TLS_RSA_WITH_3DES_EDE_CBC_SHA,
                                TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />

Tomcat 7 and later

< Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               keystoreFile="keystore/SSL.jks"  keystorePass="证书密码"
               clientAuth="false" sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2"
               ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,
                               TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                               TLS_RSA_WITH_AES_128_CBC_SHA256,
                               TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
                               TLS_RSA_WITH_3DES_EDE_CBC_SHA,
                               TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />

使用apr的tomcat(windows环境路径请使用“\”)

<Connector port="443" maxHttpHeaderSize="8192"
               maxThreads="150"
               protocol="HTTP/1.1"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               SSLEnabled="true"
               sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2"
               SSLCertificateFile="conf/2_domian.com.crt"
               SSLCertificateKeyFile="conf/3_domian.com.key"
               SSLCertificateChainFile="conf/1_root_bundle.crt" />

IIS服务器: 
使用我们的套件工具,按照如下图进行修复。 
下载地址: 
windows server 2008 http://www.wosign.com/download/IISCrypto.exe 
windows server 2012 https://www.nartac.com/Downloads/IISCrypto/IISCrypto40.exe 
备注:windows server 2003不支持tls1.1和1.2请升级至2008 R2或2012 

根据图示进行选择,修改完成后重启服务器。