|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
cURL是一个开源项目,主要产品有curl(命令行工具)和libcurl。curl是一个利用URL语法在命令行方式下工作的开源文件传输工具;libcurl是一个跨平台的开源网络协议库,支持http、https、rtsp等多种协议。
10月11日,启明星辰VSRC监测到cURL项目发布安全公告,修复了curl/ libcurl中的一个SOCKS5堆缓冲区溢出漏洞(CVE-2023-38545),目前该漏洞的细节及PoC已公开。
当curl被要求将主机名传递给SOCKS5代理以允许其解析地址时,如果检测到主机名长度超过255字节,curl会切换到本地名称解析,而只将解析后的地址传递给代理。但由在缓慢的 SOCKS5 握手过程中,表示 "让主机解析名称"的本地变量可能会获得错误的值,并将过长的主机名复制到目标缓冲区(而不是解析后的地址),导致 curl 在 SOCKS5 代理握手过程中发生基于堆的缓冲区溢出,成功利用该漏洞可能导致数据损坏或代码执行等。
此外,cURL项目还修复了另一个cookie注入漏洞(CVE-2023-38546,低危),在某些特定条件下,可能导致使用none 文件注入cookie,成功利用该漏洞的威胁者可以使用libcurl 将 cookie 插入到正在运行的程序中。
二、影响范围
CVE-2023-38545
7.69.0 <= libcurl <= 8.3.0
CVE-2023-38546
7.9.1 <= libcurl <= 8.3.0
三、安全措施
3.1 升级版本
目前这些漏洞已经修复,受影响用户可将curl升级到版本8.4.0或更新到以下版本:
CVE-2023-38545
libcurl < 7.69.0
libcurl >= 8.4.0
CVE-2023-38546
libcurl < 7.9.1
libcurl >= 8.4.0
下载链接:
https://curl.se/download.html
3.2 临时措施
针对CVE-2023-38545:
不要将CURLPROXY_SOCKS5_HOSTNAME代理与curl一起使用;
不要将代理环境变量设置为socks5h://。
3.3 通用建议
定期更新系统补丁,减少系统漏洞,提升服务器的安全性。
加强系统和网络的访问控制,修改防火墙策略,关闭非必要的应用端口或服务,减少将危险服务(如SSH、RDP等)暴露到公网,减少攻击面。
使用企业级安全产品,提升企业的网络安全性能。
加强系统用户和权限管理,启用多因素认证机制和最小权限原则,用户和软件权限应保持在最低限度。
启用强密码策略并设置为定期修改。
3.4 参考链接
https://curl.se/docs/CVE-2023-38545.html
https://curl.se/docs/CVE-2023-38546.html
https://github.com/curl/curl/commit/fb4415d8aee6c1
https://hackerone.com/reports/2187833
原文始发于微信公众号(维他命安全):【漏洞通告】curl SOCKS5堆缓冲区溢出漏洞(CVE-2023-38545)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论