漏洞:SSL/TLS 服务器瞬时 Diffie-Hellman 公共密钥过弱【原理扫描】

时间:2022-01-20 19:38:11

前提概要:10.1.5.117 nginx服务器出现以下两个漏洞


漏洞1:SSL/TLS 服务器瞬时 Diffie-Hellman 公共密钥过弱【原理扫描】
解决办法:查看上篇博客-面对Logjam攻击 你该如何保护Debian或Ubuntu服务器?


受影响主机 10.1.5.117; 
详细描述 安全套接层(Secure Sockets Layer,SSL),一种安全协议,是网景公司(Netscape)在推出Web浏览器首版的同时提出的,目的是为网络通信提供安全及数据完整性。SSL在传输层对网络连接进行加密。传输层安全TLS(Transport Layer Security),IETF对SSL协议标准化(RFC 2246)后的产物,与SSL 3.0差异很小。

当服务器SSL/TLS的瞬时Diffie-Hellman公共密钥小于等于1024位时,存在可以恢复纯文本信息的风险。

DHE man-in-the-middle protection (Logjam)
--------------------------------------------------------
https://www.openssl.org/blog/blog/2015/05/20/logjam-freak-upcoming-changes/
https://weakdh.org/sysadmin.html
https://en.wikipedia.org/wiki/DiffieE28093Hellman_key_exchange#Security
解决办法 一. http服务器相关配置
1.首先生成大于1024bit(例如2048bit)的dhkey
openssl dhparam -out dhparams.pem 2048

2.然后在对应服务器中配置

Apache2.4.8及以后版本
使用如下配置命令配置(http.conf中或者对应的虚拟主机配置文件中添加)
SSLOpenSSLConfCmd DHParameters "{path to dhparams.pem}"

Apache2.4.7版本
Apache2.2.31版本及以后版本
redhat debian等大多发行版中最新Apache2.2.x
通过把dhparams.pem的内容直接附加到证书文件后

Apache2.4.7之前2.4.x版本
Apache2.2.31之前版本
dhparam默认为1024bit 无法修改

nginx使用如下命令配置(在对应的虚拟主机配置文件nginx.conf中server字段内添加)
ssl_dhparam {path to dhparams.pem}


二.如果服务器配置无法修改,例如Apache2.2.31之前版本,可以禁用DHE系列算法,采用保密性更好的ECDHE系列算法,如果ECDHE不可用可以采用普通的 RSA。


更多解决方案请参考:
https://weakdh.org/sysadmin.html
威胁分值 4.3
危险插件
发现日期 2015-11-26
CVSS评分 4.3

查看nginx配置文件nginx.conf