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

Posted 威流微信公众平台开发研究工作室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务器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;
  • 1
  • 2
  • 1
  • 2

复制代码 
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
  • 1
  • 2
  • 1
  • 2

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" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

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" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

使用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" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

IIS服务器: 
使用我们的套件工具,按照如下图进行修复。 
下载地址: 
windows server 2008 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 
技术分享 
根据图示进行选择,修改完成后重启服务器。

以上是关于服务器SSL不安全漏洞修复方案的主要内容,如果未能解决你的问题,请参考以下文章

Windows Server 2008或2012 修复CVE-2016-2183(SSL/TLS)漏洞的办法

安全测试 web安全测试 常规安全漏洞 可能存在SQL和JS注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?SQL注入漏洞修复 JS注入漏洞修复 漏洞存在场景分析和修复示例(代码片段

如何修复“SSL 握手失败”

修复OpenSSL漏洞 升级OpenSSL版本 nginx静态编译ssl模块

常见安全漏洞及修复方案

漏洞修复SSL/TLS协议信息泄露漏洞(CVE-2016-2183)