漏洞分析
组件介绍
PuTTY
是一个流行的终端模拟器,主要用于远程访问
Unix
和
Unix-like
系统(如
Linux
、
BSD
等)以及
Windows
平台。它是一个
开源软件,最初由
Simon Tatham
在
1990
年代开发。
PuTTY
支持多种
网络协议,包括
SSH
(
Secure Shell
)、
Telnet
、
rlogin
和原始套接字
连接。
漏洞描述
2024
年
4
月
23
日,深信服深瞳漏洞实验室监测
PuTTY
存在密
钥泄露漏洞,编号
CVE-2024-31497
,漏洞威胁等级:高危。
在
PuTTY 0.68
至
0.80
(
0.81
之前)版本中,有偏差的
ECDSA
nonce
生成允许攻击者在大约
60
个签名内通过快速攻击恢复用户
的
NIST P-521
密钥。在对手能够读取由
PuTTY
或
Pageant
签名的
信息的情况下,这一点尤为重要。所需的签名信息集可能是公开可读
的,因为它们存储在支持使用
SSH
进行提交签名的公共
Git
服务
中,而
Pageant
通过代理转发机制进行了签名。换句话说,即使不再
使用易受攻击的
PuTTY
版本,对手也可能已经掌握了足够的签名信
息,从而泄露受害者的私钥。密钥泄露后,对手可能会对
Git
中维
护的软件进行供应链攻击。第二种独立的情况是,敌方是
SSH
服务
器的操作员,受害者对该服务器进行了身份验证(用于远程登录或文
件复制),尽管受害者并不完全信任该服务器,而且受害者使用相同
的私钥进行
SSH
连接到其他实体运营的其他服务。在这种情况下,
流氓服务器操作员(否则就无法确定受害者的私人密钥)可以获取受
害者的私人密钥,然后用它对其他服务进行未经授权的访问。如果其
他服务包括
Git
服务,那么同样有可能对以
Git
维护的软件进行供
应链攻击。例如,
3.67.0
之前的
FileZilla
、
6.3.3
之前的
WinSCP
、
2.15.0.1
之前的
TortoiseGit
和
1.14.6
之前的
TortoiseSVN
也会受
到影响。
影响范围
0.68
≤
PuTTY
<
0.81
其他影响的供应链组件:
3.24.1
≤
FileZilla
<
3.67.0
5.9.5
≤
WinSCP
<
6.3.3
2.4.0.2
≤
TortoiseGit
<
2.15.1
1.10.0
≤
TortoiseSVN
≤
1.14.6
解决方案
如何检测组件系统版本
打开
putty
,点击
About
即可查看当前版本。
官方已发布新版本解决该问题,请受到影响的用户尽快升级到最
新版本。
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html