0
点赞
收藏
分享

微信扫一扫

Diffie-Hellman Key Agreement Protocol 安全漏洞 (CVE-2002-20001)【原理扫描】

Diffie-Hellman Key Agreement Protocol是一种密钥协商协议。

它最初在 Diffie 和 Hellman 关于公钥密码学的开创性论文中有所描述。

该密钥协商协议允许 Alice 和 Bob 交换公钥值,并根据这些值和他们自己对应的私钥的知识,安全地计算共享密钥K,从而实现进一步的安全通信。

仅知道交换的公钥值,窃.听.者无法计算共享密钥。

Diffie-Hellman Key Agreement Protocol 存在安全漏洞,远程攻.击者可以发送实际上不是公钥的任意数字,并触发服务器端DHE模幂计算

D(HE)ater是攻.击(CVE-2002-20001)的D(HE)ater概念实现的证明,可以通过执行Diffie-Hellman钥匙交换来执行拒绝服务。

由于低版本的OpenSSH使用了过时不安全的加密算法协议,通常OpenSSH在版本迭代更新时会弃用这些不安全的加密算法。
如果我们仍要继续使用旧版本的OpenSSH,可以根据实际情况,考虑屏蔽掉不安全的加密算法,以降低安全风险。

查看客户端支持的kexalgorithms

ssh -Q kex

查看服务端支持的kexalgorithms

sshd -T | grep -w kexalgorithms

修复方法
修改sshd_config配置文件,屏蔽掉不安全的KexAlgorithms。

CVE-2002-20001是 affect SSH的一个安全漏洞,允许未经鉴权的用户绕过某些SSH服务端的访问控制。这个漏洞影响使用以下Diffie-Hellman组密钥交换算法的SSH连接:

kexalgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1

为了防范这个漏洞,您应该在SSH服务端(sshd)中屏蔽上述算法。

编辑sshd配置文件/etc/ssh/sshd_config,添加如下配置:

KexAlgorithms ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,curve25519-sha256

这将只保留ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,curve25519-sha256 算法,并屏蔽基于Diffie-Hellman的密钥交换算法,进而防范CVE-2002-20001漏洞。

重启sshd服务

systemctl restart sshd

验证漏洞是否存在

  1. 客户端远程时强制指定ssh使用的密钥交换算法

ssh -v -oKexAlgorithms=diffie-hellman-group1-sha1 root@192.168.0.223

  1. 不指定 KexAlgorithms 连接测试

ssh -v root@192.168.0.223

举报

相关推荐

0 条评论