XZ Utils 是一套广泛使用的工具和库,可提供数据压缩功能。XZ Utils 以其高效的压缩而闻名,通常被用作创建比 gzip 更小的文件的首选。其原生文件格式为 .xz,但也支持旧版 .lzma 格式。
然而,新发现的漏洞 CVE-2025-31115 影响 XZ Utils 版本 5.3.3alpha 至 5.8.0
,在其多线程解码器中引入了严重的堆使用后释放错误,可能导致依赖它的系统崩溃或内存损坏。
该漏洞的 CVSSv4 评分为 8.7
,对于使用 liblzma 中的 lzma_stream_decoder_mt 函数的应用程序和系统构成重大风险。
具体来说,漏洞在于解码器处理无效输入的方式。根据咨询(https://github.com/tukaani-project/xz/security/advisories/GHSA-6cc8-p5mm-29w2)
,“无效输入至少会导致崩溃”。此缺陷的后果非常严重,包括“释放后堆使用以及基于空指针加偏移量写入地址”。这意味着攻击者可能会利用此漏洞破坏内存,导致程序行为不可预测,甚至能够执行任意代码。
XZ Utils 是一套广泛使用的工具和库,可提供数据压缩功能。XZ Utils 以其高效的压缩而闻名,通常被用作创建比 gzip 更小的文件的首选。其原生文件格式为 .xz,但也支持旧版 .lzma 格式。
然而,新发现的漏洞 CVE-2025-31115 影响 XZ Utils 版本 5.3.3alpha 至 5.8.0
,在其多线程解码器中引入了严重的堆使用后释放错误,可能导致依赖它的系统崩溃或内存损坏。
该漏洞的 CVSSv4 评分为 8.7
,对于使用 liblzma 中的 lzma_stream_decoder_mt 函数的应用程序和系统构成重大风险。
具体来说,漏洞在于解码器处理无效输入的方式。根据咨询https://github.com/tukaani-project/xz/security/advisories/GHSA-6cc8-p5mm-29w2
,“无效输入至少会导致崩溃”。此缺陷的后果非常严重,包括“释放后堆使用以及基于空指针加偏移量写入地址”。这意味着攻击者可能会利用此漏洞破坏内存,导致程序行为不可预测,甚至能够执行任意代码。
该漏洞影响使用lzma_stream_decoder_mt
函数的应用程序和库。
幸运的是,这个漏洞已经修复。XZ Utils 版本5.8.1解决了这个漏洞。该修复还应用于 xz Git 存储库的 v5.4、v5.6、v5.8 和主分支。虽然不会为较旧的稳定分支提供新的发布包,但所有受影响的版本都有“独立补丁”(https://tukaani.org/xz/xz-cve-2025-31115.patch
)
对于无法立即应用补丁的用户,有一个解决方法。单线程 .xz 解码器 ( lzma_stream_decoder ) 不受此漏洞影响。因此,使用命令xz –decompress –threads=1和xzdec 可以降低风险,因为这些命令利用了单线程解码器。
XZ Utils 此前还涉及一个重大的供应链安全问题。2024 年 3 月,Red Hat 发出警告,称在最新的 XZ Utils 数据压缩工具和库中发现了一个后门。此问题被跟踪为 CVE-2024-3094,严重程度评分为 10/10。Red Hat 甚至建议用户立即停止使用运行 Fedora 开发版和实验版的系统,并在 Fedora 40 beta 中恢复到 5.4.x 版本的 XZ。
我们发现恶意代码经过了混淆,存在于完整的下载包中,但不存在于 Git 发行版中。后门是在构建期间通过恶意 M4 宏注入的。
该漏洞影响使用lzma_stream_decoder_mt
函数的应用程序和库。
幸运的是,这个漏洞已经修复。XZ Utils 版本5.8.1解决了这个漏洞。该修复还应用于 xz Git 存储库的 v5.4、v5.6、v5.8 和主分支。虽然不会为较旧的稳定分支提供新的发布包,但所有受影响的版本都有“独立补丁”(https://tukaani.org/xz/xz-cve-2025-31115.patch
)
对于无法立即应用补丁的用户,有一个解决方法。单线程 .xz 解码器 ( lzma_stream_decoder ) 不受此漏洞影响。因此,使用命令xz –decompress –threads=1和xzdec 可以降低风险,因为这些命令利用了单线程解码器。
XZ Utils 此前还涉及一个重大的供应链安全问题。2024 年 3 月,Red Hat 发出警告,称在最新的 XZ Utils 数据压缩工具和库中发现了一个后门。此问题被跟踪为 CVE-2024-3094,严重程度评分为 10/10。Red Hat 甚至建议用户立即停止使用运行 Fedora 开发版和实验版的系统,并在 Fedora 40 beta 中恢复到 5.4.x 版本的 XZ。
我们发现恶意代码经过了混淆,存在于完整的下载包中,但不存在于 Git 发行版中。后门是在构建期间通过恶意 M4 宏注入的。
原文始发于微信公众号(独眼情报):XZ Utils 再次遭遇高危多线程解码器漏洞: CVE-2025-31115
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论