PUTTY SSH客户端缺陷允许恢复加密私钥
2024-4-28 09:56:40 Author: www.4hou.com(查看原文) 阅读量:18 收藏

胡金鱼 漏洞 刚刚发布

684

收藏

导语:可能有更多软件工具受到 CVE-2024-31497 的影响,这具体取决于它们所采用的 PuTTY 版本。

PuTTY 0.68 至 0.80 中的 CVE-2024-31497 漏洞允许有权访问 60 个加密签名的攻击者恢复用于其生成的私钥。

PuTTY 是一种流行的开源终端仿真器、串行控制台和网络文件传输应用程序,支持 SSH(安全外壳)、Telnet、SCP(安全复制协议)和 SFTP(SSH 文件传输协议)。

系统管理员和开发人员主要使用该软件从基于 Windows 的客户端通过 SSH 远程访问和管理服务器和其他网络设备。

该漏洞被追踪为 CVE-2024-31497,由 PuTTY 为用于 SSH 身份验证的 NIST P-521 曲线生成 ECDSA nonces(临时唯一加密数字)而引起的。

具体来说,由于 PuTYY 使用确定性方式来生成这些数字,以弥补特定 Windows 版本上缺乏强大的加密随机数生成器,因此存在偏差。

PuTTY 技术的工作原理是生成 SHA-512 散列,然后对它进行 mod q 缩减,其中 q 是 DSA 系统中使用的组的阶数。对于整数 DSA(PuTTY 技术最初是为此开发的),q 约为 160 位;对于椭圆曲线 DSA(后来出现),它的位数与曲线模数大致相同,因此 NIST 曲线为 256 或 384 或 521 位。

在除 P521 之外的所有情况下,通过减少 512 位数字 mod q 引入的偏差可以忽略不计。但在 P521 的情况下,其中 q 有 521 位(即超过 512 位),减少 512 位数字 mod q 所带来的偏差可以忽略不计。 q 没有影响——得到的 k 值的前 9 位始终为零。

恢复私钥的主要影响是它允许未经授权地访问 SSH 服务器或以开发人员身份签署提交,甚至可能对受影响的软件项目进行供应链攻击。

利用 CVE-2024-31497

使用用户的私钥创建数字签名,并通过服务器上相应的公钥进行验证,保证用户的身份和通信的安全。攻击者需要 58 个签名才能计算目标的私钥,他们可以通过从他们控制或受到损害的 SSH 服务器登录或从签名的 Git 提交中收集签名来获取私钥。

从 SSH 服务器收集签名意味着服务器本身已经受到威胁,因此威胁分子可以广泛访问操作系统。然而,从公共提交中获取签名的方法对于攻击者来说更为实用。

在某些情况下,无需提前损害服务器即可利用此漏洞。其中一种情况是使用 SSH 密钥来签署 Git 提交。常见的设置包括在本地使用 Pageant(PuTTY 的 ssh 代理)并将代理转发到开发主机。

在这里,将 Git 配置为使用 OpenSSH 使用 Pageant 提供的 SSH 密钥对 Git 提交进行签名,然后由 Pageant 生成签名,使其容易被私钥恢复。

缺陷已修复,其他软件受到影响

开发人员在 PuTTY 0.81 版本中修复了该漏洞,该版本放弃了之前的 k 代方法,并针对所有 DSA 和 ECDSA 密钥切换到 RFC 6979 技术。

然而,值得注意的是,使用该工具的易受攻击版本生成的任何 P521 私钥都应被视为不安全,并应替换为新的安全密钥。

以下使用易受攻击的 PuTTY 的软件已确认受到影响:

·FileZilla 3.24.1 – 3.66.5(在 3.67.0 中修复)

·WinSCP 5.9.5 – 6.3.2(在 6.3.3 中修复)

·TortoiseGit 2.4.0.2 – 2.15.0(在 2.15.0.1 中修复)

·TortoiseSVN 1.10.0 – 1.14.6(可以通过配置 TortoiseSVN 使用最新 PuTTY 0.81 版本中的 Plink 来缓解)

可能有更多软件工具受到 CVE-2024-31497 的影响,这具体取决于它们所采用的 PuTTY 版本。因此,建议用户检查他们的工具并根据需要采取预防措施。

文章翻译自:https://www.bleepingcomputer.com/news/security/putty-ssh-client-flaw-allows-recovery-of-cryptographic-private-keys/如若转载,请注明原文地址

  • 分享至

取消 嘶吼

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟


文章来源: https://www.4hou.com/posts/onMX
如有侵权请联系:admin#unsafe.sh