apache如何禁用sslv3?

运维 作者:程序猿 2022-04-25 23:19:58

ssl 3.0被认为是不安全的,原因在于它使用RC4加密或CBC模式加密,而前者易受偏差攻击,后者会导致POODLE攻击。

生产环境中,经常会扫描到此漏洞,解决方法是apache服务端停用该协议。


一、环境准备

理解SSL和TLS:http在数据传输过程中使用的是明文,为了解决这个问题https应运而生,ssl就是基于https的加密协议。当ssl更新到3.0版本后,IETF(互联网工程任务组)对ssl3.0进行了标准化,标准化后的协议就是TLS1.0,所以说TLS是SSL的标准化后的产物,TLS当前有1.0 ,1.1,1.2三个版本,默认使用1.0,到此我们对ssl和TLS有了一个基本的了解。

web服务器支持TLS1.2需要的服务器运行环境:

Apache对应版本应>=2.2.23;

OpenSSL对应版本应>= 1.0.1

查看当前服务器apache版本

[root@host-192-168-149-10 conf.d]# httpd -v

Server version: Apache/2.4.29 (Unix)

Server built:   Jan 22 2018 16:51:25

openssl版本

[root@host-192-168-149-10 conf.d]# openssl version

OpenSSL 1.0.1e-fips 11 Feb 2013

二、环境整改

测试存在安全漏洞的域名,如下通过sslv3访问可以正常返回信息,攻击者可能会利用此漏洞危害系统。

[root@host-192-168-149-10 conf.d]# curl  --sslv3 https://cs.df230.xyz/test/api/configs/fedch/all

{

 "overdue" : false,

 "success" : true,

 "errorCode" : null,

 "message" : "请求成功",

 "data" : {

   "global" : {

     "copyright" : "功能清单",

}

apache默认支持SSLv3,TLSv1,TLSv1.1,TLSv1.2协议

(注:ssl功能需要在http.conf中启用LoadModule ssl_module modules/mod_ssl.so)

apache默认配置如下

SSLProtocol All -SSLv2

进入目录/usr/local/apache/conf/extra

vi修改ssl.conf按照如下配置,目的是关闭sslv3协议

SSLEngine on

SSLProtocol all -SSLv2 -SSLv3

SSLProtocol TLSv1.2

配置保存后,需要service httpd restart重启apache使配置生效

再次测试sslv3访问,无法访问

[root@host-192-168-149-10 conf.d]# curl  --sslv3 https://cs.df230.xyz/test/api/configs/fedch/al

curl: (35) SSL connect error

通过google浏览器F12进入开发模式,可以看到浏览器访问当前域名使用的ssl协议为TLS1.2。



至此,漏洞整改完成,so easy!


关注公众号:拾黑(shiheibook)了解更多

友情链接:

下软件就上简单下载站:https://www.jdsec.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接