CVE-2025-26519 重磅曝光!musl libc 库安全崩溃,应用直面远程代码执行危机

阅读量28297

发布时间 : 2025-02-20 14:24:19

x
译文声明

本文是翻译文章,文章原作者 do son,文章来源:securityonline

原文地址:https://securityonline.info/cve-2025-26519-exposes-applications-using-musl-libc-to-remote-code-execution/

译文仅供参考,具体内容表达以及含义原文为准。

CVE-2025-26519

在 musl libc 中发现了一个严重漏洞,musl libc 是一种轻量级 C 标准库,常用于嵌入式系统和资源受限的环境。该漏洞编号为 CVE-2025-26519(通用漏洞评分系统(CVSS)评分为 8.1),攻击者可利用此漏洞在存在漏洞的系统上执行任意代码。漏洞源于 iconv () 函数中一个受输入控制的越界写入原语。

 

musl libc 因其占用空间小且注重正确性而备受青睐,由于其广泛应用,这一漏洞尤其令人担忧。问题出在 iconv () 处理字符编码转换的方式上,特别是从 EUC – KR转换为 UTF – 8 时。Nick Wellnhofer发现了这个漏洞,其产生原因是 EUC – KR 解码器中输入验证不当,以及 UTF – 8 编码器中存在一种假设,即输入解码器总是生成有效的 Unicode 标量值。

 

当应用程序使用 iconv_open 函数,将 UTF – 8 作为输出编码,EUC – KR 作为输入编码时,就会触发 CVE-2025-26519 漏洞。关键是,应用程序必须使用生成的转换描述符处理不可信输入。常见场景是将不可信数据(如 XML、HTML 或 MIME 编码的电子邮件中)声明的 MIME 字符集作为 iconv_open 的输入,以便将任意编码的输入转换为 UTF – 8。攻击者可以精心构造恶意输入,利用该漏洞覆盖内存,并有可能控制受影响的系统。

 

自 musl libc 在 0.9.13 版本引入 EUC – KR 支持以来,这段存在漏洞的代码就一直存在。包括 1.2.5 版本及之前的所有版本都受到影响。强烈建议用户更新到 1.2.6 或更高版本,这些版本包含了必要的修复。

 

对于使用基于 musl libc 发行版的用户,建议通过发行版的官方更新渠道获取更新后的软件包。对于自行构建 musl libc 的用户,也提供了源代码补丁。这些补丁解决了漏洞的根本原因(不正确的输入字节验证)以及导致越界写入的风险升级因素。

 

在更新或打补丁困难的情况下,特别是对于静态链接二进制文件,有一个临时解决方法。这涉及使用十六进制编辑器修改二进制文件以禁用 EUC – KR 支持。具体来说,字节序列 “euckr\0ksc5601\0ksx1001\0cp949\0” 应替换为 “—–\0——-\0——-\0—–\0”。这有效地阻止了 iconv_open 识别 EUC – KR 及其别名,从而避免了存在漏洞的代码路径。虽然这减轻了直接威胁,但也禁用了 EUC – KR 解码功能。

 

这个漏洞对使用 musl libc 的系统构成了重大风险,尤其是那些处理不可信输入的系统。远程代码执行的可能性使得用户尽快采取提供的缓解措施至关重要。建议用户检查自己的系统,确保运行的是已打补丁的 musl libc 版本,以防范潜在的攻击。

 

 

本文翻译自securityonline 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66