原文: Experts Uncover Passive Method to Extract Private RSA Keys from SSH Connections

作者: Ravie Lakshmanan

译者: Mengce Zheng

日期: 2025年1月15日


一项近期研究表明,被动网络攻击者有可能通过观察在建立连接过程中自然发生的计算故障,从易受攻击的 SSH 服务器中获取私有 RSA 主机密钥。

安全外壳协议(SSH)是一种在不安全网络上安全传输命令和进行远程登录的方法。基于客户端-服务器架构,SSH 利用加密技术对设备间的连接进行身份验证和加密。在 SSH 协议中,主机密钥是一种用于认证计算机身份的加密密钥。主机密钥通常是通过诸如RSA等公钥密码体系生成的密钥对。

“如果使用 CRT-RSA 的签名实现过程中在签名计算中出现故障,观察到该签名的攻击者可能能够计算出签名者的私钥,”来自加州大学圣地亚哥分校和麻省理工学院的一组学者在论文中如此表示。

换句话说,被动对手可以在不暴露风险的情况下悄然跟踪合法连接,直至观察到暴露私钥的错误签名。随后,攻击者即可冒充被攻陷的主机,截获敏感数据并发动中间人攻击。

研究人员将该方法描述为基于格的密钥恢复故障攻击,这使他们能够恢复与 189 个独特的 RSA 公钥对应的私钥,这些公钥随后被追踪到来自四家厂商的设备:Cisco、Hillstone Networks、Mocana 和 Zyxel。值得注意的是,2018 年推出的 TLS 1.3 版本通过加密建立连接的握手过程发挥了对抗作用,从而阻止被动窃听者获取签名信息。

“这些攻击具体说明了密码学中几项设计原则的重要性:在协商出会话密钥后立即加密协议握手以保护元数据、将身份验证绑定到会话以及将身份验证与加密密钥分离,”研究人员表示。

这一发现出现在 Marvin 攻击披露的两个月之后。Marvin 攻击是 ROBOT 攻击的一个变种,该攻击允许威胁行为者通过利用破解 RSA 密文和伪造签名,进而利用 PKCS #1 v1.5 中的安全漏洞。

本文为基于AI技术的翻译改写,若需了解详细信息,请参考原文出处。