简述
软件 | 版本 |
---|---|
CentOS | CentOS Linux release 7.4.1708 (Core) |
Nginx | nginx/1.19.4 |
漏洞描述:SSL/TLS协议是一个被广泛使用的加密协议,Bar Mitzvah攻击实际上是利用了"不变性漏洞",这是RC4算法中的一个缺陷,它能够在某些情况下泄露SSL/TLS加密流量中的密文,从而将账户用户名密码,信用卡数据和其他敏感信息泄露给黑客。
其实简单说,就是因为Nginx中ssl配置的RC4加密算法过弱造成的,将改成一个较强的算法就可以了。
查看漏洞
首先了解一下,nignx默认ssl中的加密算法,查看nginx.conf文件,找到 ssl_ciphers
可以通过 openssl s_client -connect 网站|IP地址:端口 -cipher RC4验证算法强度
可以看到,很多信息都被泄露了,可以被获取,这就是漏洞所在。
修改ssl_ciphers的加密算法
编辑nginx.conf文件,找到 ssl_ciphers,将默认算法注释,然后更改为以下加密算法
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
验证
重载nginx
/路径/nginx -s reload
再次执行 openssl s_client -connect 网站|IP地址:端口 -cipher RC4
增强加密算法之后,就获取不到证书了,解决了算法较弱的问题。