FreeBSD:cURL -- 多种漏洞 (6294f75f-03f2-11e5-aab1-d050996490d0)

medium Nessus 插件 ID 83842

简介

远程 FreeBSD 主机缺少与安全相关的更新。

描述

cURL 报告:

libcurl 保留最近几个使用过的连接池,以便促进应用程序轻松、便利和完全透明的连接重用。

进行经过认证的 HTTP 请求 NTLM 时,整个连接将得到认证,而不仅是特定 HTTP 请求,这本来是 HTTP 的工作方式。这使 NTLM 变得特殊并成为代码中特殊处理的主题。通过 NTLM,一旦该连接得到认证,连接关闭之前将不再需要任何其他认证。

进行经过认证的 HTTP 请求 Negotiate 时,整个连接可能得到认证,而不仅是特定 HTTP 请求,这本来是 HTTP 的工作方式,因为 Negotiate 基本上能够隐蔽地使用 NTLM。curl 不遵守这一事实,但会假设此类请求也将按照请求得到认证。

libcurl 支持 HTTP“cookie”,如 RFC 6265 中所述。结合每个 Cookie,将存在多个不同属性,但对于此漏洞,我们关注相关的“path”元素。
它提供关于 Cookie 在指定主机上的哪个路径中有效的信息。

内部 libcurl 函数调用的 sanitize_cookie_path() 清理来自远程站点或从文件中读取的 path 元素,该函数未正确验证输入。如果提供由单个双引号构成的路径,libcurl 会用索引 -1 为新分配的内存区域制作索引并向其分配 0,从而破坏其本不应破坏的堆内存。

libcurl 中有一个调用 fix_hostname() 的专有函数,如果主机名末尾有点,则删除该点。从通知 libcurl 操作的 URL 中提取主机名之后将调用该函数。

如果为 URL 提供了零长度主机名,例如“http://:80”或只有“:80”,fix_hostname() 将以 -1 偏移为主机名指针制作索引(因为它盲目地假设零长度)并同时读取和分配该地址。

解决方案

更新受影响的程序包。

另见

https://curl.haxx.se/docs/CVE-2015-3143.html

https://curl.haxx.se/docs/CVE-2015-3148.html

https://curl.haxx.se/docs/CVE-2015-3145.html

https://curl.haxx.se/docs/CVE-2015-3144.html

http://www.nessus.org/u?49129c0d

插件详情

严重性: Medium

ID: 83842

文件名: freebsd_pkg_6294f75f03f211e5aab1d050996490d0.nasl

版本: 2.6

类型: local

发布时间: 2015/5/27

最近更新时间: 2021/1/6

支持的传感器: Nessus

风险信息

VPR

风险因素: Medium

分数: 4.4

CVSS v2

风险因素: Medium

基本分数: 4.9

矢量: CVSS2#AV:L/AC:L/Au:N/C:N/I:N/A:C

漏洞信息

CPE: p-cpe:/a:freebsd:freebsd:curl, cpe:/o:freebsd:freebsd

必需的 KB 项: Host/local_checks_enabled, Host/FreeBSD/release, Host/FreeBSD/pkg_info

补丁发布日期: 2015/5/26

漏洞发布日期: 2015/4/22

参考资料信息

CVE: CVE-2014-3143, CVE-2014-3144, CVE-2014-3145, CVE-2014-3148