研究人员利用SSH服务器签名错误提取RSA密钥
2023-11-21 12:1:16 Author: 嘶吼专业版(查看原文) 阅读量:8 收藏

SSH是一种用于安全通信的加密网络协议,广泛部署于远程系统访问、文件传输、系统管理任务中。SSH中采用公钥加密系统RSA作用户认证,RSA使用共享的公钥加密通信信息,并使用私钥加密通信内容。美国加州大学圣地亚哥分校研究人员研究发现,被动攻击者在特定条件下可以从失败的SSH连接错误中提取出RSA密钥。

研究人员分析发现,被动的网络攻击者可以从签名计算过程中出现错误的SSH服务器中提取出RSA密钥。CRT-RSA可以降低公钥的大小,并且提高解密速度,如果使用CRT-RSA的签名实现在签名计算过程中出现错误,可以查看这些签名的攻击者就可以计算签名者的私钥。

虽然此类错误很少见,但由于硬件缺陷此类错误也是不可避免的。如果攻击者拥有足够多的数据,就可以利用这些数据来提取RSA密钥。对于TLS来说,该问题会影响老版本的TLS。在TLS 1.3中,通过加密建立连接的握手协议来预防被动监听者读取签名信息。

一般认为该问题并不影响SSH,研究人员证明了使用基于格的攻击可以提取出RSA密钥。

图 Intel Xeon E5-2699上的密钥恢复耗时

研究人员实验发现其基于格的攻击方法非常高效,成功率可以达到100%。研究人员通过4962个无效签名成功提取出了189个唯一的RSA公钥对应的私钥,但未测试RSA-1024、SHA 512,因为这些算法哈希中的未知位数超出了暴力破解和可以用格计算的范围。

图 提取的RSA密钥对应的设备

从设备来看,许多提取的秘密信息都来自于包含有漏洞的实现的设备,其中大部分来自Zyxel设备。

研究人员今年初将这一问题告知了Cisco和Zyxel。Cisco在Cisco ASA和FTD软件中引入了修复措施,并正在Cisco IOS和IOS XE软件中寻求缓解措施。Zyxel称研究人员测试中发现的ZLD固件版本已改用OpenSSL,所以不受影响。为应对攻击者提取密钥的能力,研究人员建议在发送签名之前验证签名的有效性,比如使用依赖OpenSSL来生成签名的OpenSSH套件。

参考及来源:https://www.bleepingcomputer.com/news/security/researchers-extract-rsa-keys-from-ssh-server-signing-errors/


文章来源: http://mp.weixin.qq.com/s?__biz=MzI0MDY1MDU4MQ==&mid=2247571346&idx=2&sn=c4474c8a0030da0d3ad94465567d2ca2&chksm=e91407a8de638ebe530b7030d167a2064d59fce24e36d7480bec9ae6f30c4be717e22f22ea9d&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh