GLSA-202209-02 : IBM Spectrum Protect:多个漏洞

critical Nessus 插件 ID 164805

语言:

描述

远程主机受到 GLSA-202209-02 中所述漏洞的影响(IBM Spectrum Protect:多个漏洞)

- IBM Spectrum Protect Client 8.1.0.0-8 至 1.11.0 版容易受到基于堆栈的缓冲区溢出的影响,该溢出由处理当前区域设置时边界检查不正确所致。本地攻击者可造成缓冲区溢出并在系统上以升级的权限执行任意代码,或造成应用程序崩溃。IBM X-Force ID:199479 (CVE-2021-29672)

- 为了解密 SM2 加密的数据,应用程序应调用 API 函数 EVP_PKEY_decrypt()。通常,应用程序将会调用此函数两次。第一次:输入时,out 参数可以是 NULL,退出时,outlen 参数会填充保存解密后明文的缓冲区大小。然后,应用程序会分配大小充足的缓冲区,并再次调用 EVP_PKEY_decrypt(),但这次会为 out 参数传递非空值。SM2 解密代码的实现中存在一个错误,这意味着用于保存 EVP_PKEY_decrypt() 首次调用所返回明文的缓冲区大小的计算值可能小于第二次调用所需的实际大小。当应用程序通过过小的缓冲区第二次调用 EVP_PKEY_decrypt() 时,将会导致缓冲区溢出。能够向应用程序展示用于解密的 SM2 内容的恶意攻击者可使攻击者选择的数据溢出缓冲区多达 62 个字节,这会改变缓冲区之后保存的其他数据内容,从而可能改变应用程序行为或造成应用程序崩溃。缓冲区的位置取决于应用程序,但通常是在堆中分配。已在 OpenSSL 1.1.1l 中修复(影响 1.1.1-1.1.1k)。
(CVE-2021-3711)

- ASN.1 字符串在 OpenSSL 内表示为 ASN1_STRING 结构,该结构包含一个保存字符串数据的缓冲区和一个保存缓冲区长度的字段。此字符串与普通 C 字符串形成对比,后者表示为字符串数据的缓冲区,以 NUL(0) 字节结束。虽然不是严格要求,但使用 OpenSSL 的独有 d2i 函数(及其他类似解析函数)解析的 ASN.1 字符串,以及使用 ASN1_STRING_set() 函数设定值的任何字符串,都将额外使用 NUL 方式终止 ASN1_STRING 结构中的字节数组。但是,应用程序可能会直接构建有效的 ASN1_STRING 结构,该结构不会直接在 ASN1_STRING 数组中设置数据和长度字段,进而使用 NUL 终止字节数组。这种情况也会因使用 ASN1_STRING_set0() 函数发生。已经发现,打印 ASN.1 数据的多个 OpenSSL 函数均假设 ASN1_STRING 字节数组将使用 NUL 终止,但无法保证直接构建的字符串亦是如此。当应用程序请求打印 ASN.1 结构时,并且 ASN.1 结构包含由应用程序直接构建但并非使用 NUL 终止的 ASN1_STRING 时,将会出现读取缓冲区溢出。同样的情况也会在处理证书的名称限制期间出现(例如,证书直接由应用程序构建,而非通过 OpenSSL 解析函数加载,以及证书包含非 NUL 终止的 ASN1_STRING 结构)。这种情况也会出现在 X509_get1_email()、X509_REQ_get1_email() 和 X509_get1_ocsp() 函数中。如果恶意执行者使应用程序直接构建 ASN1_STRING,然后通过某个受影响的 OpenSSL 函数处理该字符串,此问题也会出现。此问题可能会导致崩溃(导致拒绝服务攻击)。
该问题还可能导致私有内存内容(例如私钥或敏感纯文本)泄露。已在 OpenSSL 1.1.1l 中修复(影响 1.1.1-1.1.1k)。已在 OpenSSL 1.0.2za (Affected 1.0.2-1.0.2y) 中修复。(CVE-2021-3712)

- IBM Spectrum Protect Client 7.1 至 8.1 版容易受到基于堆栈的缓冲区溢出的影响,该溢出由边界检查不正确所致。本地攻击者可利用此漏洞造成拒绝服务。IBM X-Force ID:214438. (CVE-2021-39048)

- 当攻击者具有 Log4j 配置的写入权限时,Log4j 1.2 中的 JMSAppender 容易受到不受信任数据反序列化的影响。攻击者可通过提供 TopicBindingName 和 TopicConnectionFactoryBindingName 配置,导致 JMSAppender 以与 CVE-2021-44228 类似的方式执行 JNDI 请求,从而造成远程代码执行。请注意,此问题仅影响特别配置为使用 JMSAppender(非默认设置)的 Log4j 1.2 。Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为该版本可解决先前版本中存在的许多其他问题。(CVE-2021-4104)

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

解决方案

所有 IBM Spectrum Protect 用户均应升级到最新版本:

# emerge --sync # emerge --ask --oneshot --verbose >=app-backup/tsm-8.1.13.3

另见

https://security.gentoo.org/glsa/202209-02

https://bugs.gentoo.org/show_bug.cgi?id=788115

https://bugs.gentoo.org/show_bug.cgi?id=829189

https://bugs.gentoo.org/show_bug.cgi?id=831509

插件详情

严重性: Critical

ID: 164805

文件名: gentoo_GLSA-202209-02.nasl

版本: 1.3

类型: local

发布时间: 2022/9/7

最近更新时间: 2023/10/12

支持的传感器: Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 6.2

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

CVSS 分数来源: CVE-2021-3711

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 9.1

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

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

漏洞信息

CPE: p-cpe:/a:gentoo:linux:tsm, cpe:/o:gentoo:linux

必需的 KB 项: Host/local_checks_enabled, Host/Gentoo/release, Host/Gentoo/qpkg-list

可利用: true

易利用性: Exploits are available

补丁发布日期: 2022/9/7

漏洞发布日期: 2021/2/16

参考资料信息

CVE: CVE-2021-29672, CVE-2021-3711, CVE-2021-3712, CVE-2021-39048, CVE-2021-4104