Tenable Security Center 多个漏洞 (TNS-2024-21)

critical Nessus 插件 ID 213289

简介

远程系统上安装的 Security Center 实例受到多个漏洞影响。

描述

根据其自我报告的版本,远程主机上运行的 Tenable Security Center 版本为 6.4.5。因此,该软件受到 TNS-2024-21 公告中提及的多个漏洞影响。

- 在低于 8.1.31 的 8.1.*、低于 8.2.26 的 8.2.*、低于 8.3.14 的 8.3.* PHP 版本中,32 位系统中 ldap_escape() 函数不受控制的字符串输入长度可造成整数溢出问题,进而导致越界写入。(CVE-2024-11236)

- 在低于 8.1.31 的 8.1.*、低于 8.2.26 的 8.2.*、低于 8.3.14 的 8.3.* PHP 版本中,由于 convert.quoted-printable-decode 过滤器中存在错误,某些数据可能会导致缓冲区多读取一个字节,这在某些情况下会导致崩溃或泄露其他内存区域的内容。(CVE-2024-11233)

- 问题摘要:检查过长的 DSA 密钥或参数时可能会非常缓慢。影响汇总:
使用函数 EVP_PKEY_param_check() 或 EVP_PKEY_public_check() 检查 DSA 公钥或 DSA 参数的应用程序可能会遇到长时间延迟。如果从不受信任的来源获取正在检查的密钥或参数,这可能导致拒绝服务。函数 EVP_PKEY_param_check() 或 EVP_PKEY_public_check() 对 DSA 参数执行各种检查。如果模数(“p”参数)太大,则其中某些计算需要很长时间。尝试使用非常大的模数会很慢,并且 OpenSSL 不允许使用模数长度超过 10,000 位的公钥进行签名验证。但是,密钥和参数检查函数在执行检查时不会限制模数大小。当应用程序调用 EVP_PKEY_param_check() 或 EVP_PKEY_public_check() 并提供从不受信任的来源获取的密钥或参数,就可能容易受到拒绝服务攻击。OpenSSL 本身不会在不受信任的 DSA 密钥上调用这些函数,因此只有直接调用这些函数的应用程序可能会受到攻击。使用 `-check` 选项时,OpenSSL pkey 和 pkeyparam 命令行应用程序容易受到攻击。OpenSSL SSL/TLS 实现不受此问题影响。OpenSSL 3.0 和 3.1 FIPS 提供程序会受此问题影响。(CVE-2024-4603)

- 问题摘要:调用 OpenSSL API 函数 SSL_free_buffers 可能会在某些情况下导致之前释放的内存遭到访问 影响摘要:释放后使用可造成一系列潜在后果,例如有效数据损坏、崩溃或执行任意代码。但是,只有直接调用 SSL_free_buffers 函数的应用程序会受到此问题的影响。不调用此函数的应用程序不会受到攻击。我们的调查表明应用程序很少使用此函数。SSL_free_buffers 函数用于释放处理网络传入记录时使用的内部 OpenSSL 缓冲区。只有在缓冲区当前未在使用中时,调用才应成功。但是,已发现在两种情况下,缓冲区即使仍在使用时也会被释放。第一种情况是,OpenSSL 已从网络接收到记录标头并加以处理,但完整的记录正文尚未到达。在这种情况下,即使只有部分记录得到了处理且缓冲区仍在使用中,SSL_free_buffers 仍可成功调用。第二种情况是,OpenSSL 已接收并处理包含应用程序数据的完整记录,但应用程序仅读取了部分数据。同样,在这种情况下,即使缓冲区仍在使用中,对 SSL_free_buffers 的调用也会成功。尽管这些情况可能在正常操作期间意外发生,但恶意攻击者仍可尝试设计发生这种情况的机构。我们并未发现此问题被主动利用。3.3、3.2、3.1 和 3.0 中的 FIPS 模块不受此问题影响。(CVE-2024-4741)

- 在 [] 之前的 PHP 版本 8.1.*、 8.1.29] 之前的 8.2.208.2.*、[] 之前的 8.3.88.3.* 中,由于代码逻辑错误,在验证 URL (FILTER_VALIDATE_URL) 时某些类型 URL 函数将导致无效的用户信息(URL 的用户名 + 密码部分)被视为有效用户信息。这可能会导致下游代码将无效的 URL 视为有效 URL 并对其进行错误的解析。 (CVE-2024-5458)

- 问题摘要:使用空的受支持客户端协议缓冲区调用 OpenSSL API 函数 SSL_select_next_proto 可能会造成崩溃或将内存内容发送至对等机。影响摘要:缓冲区越界读取可造成一系列潜在后果,例如预期之外的应用程序行为或崩溃。
具体来说,该问题可能导致系统将最多 255 字节的任意私有数据从内存发送到对等机,从而导致机密性丧失。但是,只有直接调用 SSL_select_next_proto 函数且支持的客户端协议长度为 0 的应用程序才会受到此问题的影响。这并非是寻常情况,并且这种情况通常不受攻击者控制,但如果在调用应用程序的过程中出现配置或编程错误,则可能会意外发生。OpenSSL API 函数 SSL_select_next_proto 通常由支持 ALPN(应用程序层协议协商)或 NPN(下一代协议协商)的 TLS 应用程序使用。NPN 版本较低,不符合标准,已弃用,改用 ALPN。我们认为,ALPN 的部署范围明显比 NPN 更广泛。SSL_select_next_proto 函数支持来自服务器的协议列表和来自客户端的协议列表,并返回出现在服务器列表中,也出现在客户端列表中的第一个协议。如果两个列表之间没有重合部分,它将返回客户端列表中的第一个项目。无论哪种情况,它都会发出信号表明是否发现两个列表之间有重合部分。在使用零长度客户端列表调用 SSL_select_next_proto 的情况下,它无法注意到这种情况并会返回客户端列表指针后立即出现的内存(并报告列表中没有重合部分)。此函数通常由 ALPN 的服务器端应用程序回调或 NPN 的客户端应用程序回调调用。对于 ALPN,libssl 保证客户端提供的协议列表的长度永远不会为零。服务器协议列表来自应用程序,通常情况下,应至少包含一项。在这种情况下,如果已按预期调用 SSL_select_next_proto 函数(使用客户端提供的列表在 client/client_len 参数中传递),则应用程序将不会受到此问题的影响。如果应用程序意外地获配了零长度服务器列表,并且意外地在客户端/客户端长度参数中传递了该零长度服务器列表,并且未能正确处理无重叠响应(这通常会导致 ALPN 中的握手失败),那么该应用程序将容易受到此问题的影响。对于 NPN 来说,该协议允许客户端在没有重叠的时候择机选择一个协议。在遵循这一点的情况下,OpenSSL 会在无重叠的情况下返回第一个客户端协议。客户端协议列表来自应用程序,通常情况下,应至少包含一项。但是,如果通过等于 0 的 client_len 意外调用了 SSL_select_next_proto 函数,则将返回无效的内存指针。如果应用程序使用此输出作为协议,则会失去机密性。经评定,此问题的严重性为低危,因为如果应用程序使用 NPN 而不是 ALPN,则最有可能受到攻击 - 但 NPN 并未得到广泛使用。它还需要出现应用程序配置或编程错误。最后,该问题通常不受攻击者控制,因此不太可能被主动利用。3.3、3.2、3.1 和 3.0 中的 FIPS 模块不受此问题影响。由于此问题的严重性低,我们目前不会发布新版本的 OpenSSL。后续发布的版本中将包含此修复。(CVE-2024-5535)

- 在 [] 之前的 PHP 版本 8.1.* 、 8.1.29] 之前的 8.2.208.2.* 和 [] 之前的 8.3.88.3.* 中,如果命令名称包含结尾空格,则针对 CVE-2024-1874 的补丁不起作用。最初的问题:在数组语法中使用 proc_open() 命令时,由于逸出不充分,如果所执行命令的参数由恶意用户控制,该用户可以提供可在 Windows shell 中执行任意命令的参数。
(CVE-2024-5585)

- 问题摘要:执行证书名称检查(例如 TLS 客户端检查服务器证书)的应用程序可能会尝试读取无效的内存地址,从而导致应用程序进程异常终止。影响摘要:应用程序的异常终止可造成拒绝服务。将预期名称与 X.509 证书的“otherName”主题备用名称进行比较时,执行证书名称检查(例如 TLS 客户端检查服务器证书)的应用程序可能会尝试读取无效的内存地址。这可能导致终止应用程序的异常。请注意,基本的证书链验证(签名、日期...)不受影响,只有当应用程序也指定了预期的 DNS 名称、电子邮件地址或 IP 地址时,拒绝服务才会发生。TLS 服务器很少请求客户端证书,即使请求也通常不会对引用标识符(预期身份)执行名称检查,而是在检查证书链后提取显示的身份。因此,TLS 服务器通常不会受到影响,问题的严重性为中等。3.3、3.2、3.1 和 3.0 中的 FIPS 模块不受此问题影响。
(CVE-2024-6119)

- Security Center 利用第三方软件来帮助提供底层功能。已发现其中多个第三方组件(OpenSSL、PHP)包含漏洞,提供商已提供更新版本。出于谨慎考虑且符合最佳实践,Tenable 已选择升级这些组件,以解决这些问题的潜在影响。Security Center 补丁 SC-202412.1 将 OpenSSL 更新到 3.0.15,并将 PHP 更新到 8.2.26,以解决发现的漏洞。
Tenable 已发布 Security Center 补丁 SC-202412.1 以解决这些问题。可从 Tenable 下载门户获取安装文件:https://www.tenable.com/downloads/security-center(CVE-2024-8932)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

应用补丁 SC-202412.1

另见

http://www.nessus.org/u?94420b11

https://www.tenable.com/security/TNS-2024-21

插件详情

严重性: Critical

ID: 213289

文件名: securitycenter_6_4_5_tns_2024_21.nasl

版本: 1.1

类型: combined

代理: unix

系列: Misc.

发布时间: 2024/12/20

最近更新时间: 2024/12/20

支持的传感器: Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

Vendor

Vendor Severity: Critical

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.8

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

CVSS 分数来源: CVE-2024-11236

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.8

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:P/RL:O/RC:C

漏洞信息

CPE: cpe:/a:tenable:security_center

可利用: true

易利用性: Exploits are available

补丁发布日期: 2024/12/20

漏洞发布日期: 2024/5/16

参考资料信息

CVE: CVE-2024-11233, CVE-2024-11236, CVE-2024-4603, CVE-2024-4741, CVE-2024-5458, CVE-2024-5535, CVE-2024-5585, CVE-2024-6119, CVE-2024-8932