继几天前的消息之后
Curl正在为其长期以来最严重的安全漏洞做准备
影响到项目,Curl 8.4现在可用,并在这个问题上有了新的线索。
Curl 8.4是用这个“高”级别的安全修复发布的,另一个“低”安全问题也得到了解决,然后对这个广泛使用的下载库和
卷曲
命令行实用程序,用于通过各种网络协议下载文件。
CVE-2023-38545是CVE 8.4中解决的“高”安全问题。这个
卷曲安全页面
注意事项:
“此缺陷使curl在SOCKS5代理握手中溢出基于堆的缓冲区。
当curl被要求将主机名传递给SOCKS5代理以允许其解析地址,而不是由curl自己完成时,主机名的最大长度可以是255字节。
如果检测到主机名长度超过255字节,curl将切换到本地名称解析,而只将解析的地址传递给代理。由于一个错误,在缓慢的SOCKS5握手过程中,表示“让主机解析名称”的本地变量可能会得到错误的值,并且与目的相反,将过长的主机名复制到目标缓冲区,而不是仅复制已解析的地址。
。。。
如果使用的主机名比目标缓冲区长,则会有一个memcpy()将缓冲区覆盖到堆中。URL解析器和可能的IDN库(如果curl是用一个库构建的)必须接受主机名,这在一定程度上限制了可以在副本中使用的可用字节序列集。要想发生溢出,需要足够慢的SOCKS5握手来触发本地变量错误,并且客户端使用的主机名比下载缓冲区长。也许是恶意HTTPS服务器重定向到特制的URL。
典型的服务器延迟可能“慢”到足以触发此错误,而攻击者无需通过DoS或SOCKS服务器控制来影响它。“
这个
其他安全问题
只涉及没有文件的cookie注入。
同时,在功能方面,Curl 8.4通过HTTP网关增加了对IPFS协议的支持。Curl 8.4还放弃了对遗留的MinGW.org工具链的支持。
有关Curl 8.4所有更改的更多详细信息,请访问
curl.se
.