已关闭
CVE-2026-93990 #84
openLiBingCI创建于  13 天前关闭于  4 天前
openLiBingCI成员
13 天前 创建

一、漏洞信息
漏洞编号:CVE-2026-93990
漏洞归属组件:expat
漏洞归属的版本:2.2.10,2.2.9,2.4.1,2.4.8,2.5.0,2.6.3,2.7.1,2.7.3,2.8.1,2.8.2,2.8.4
CVSS评分:
BaseScore:8.7 High
Vector:CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
漏洞简述:
Expat through 2.8.4 fails to validate low surrogates following high surrogates in UTF-16 input, allowing malformed UTF-16 sequences to be accepted. Attackers can craft UTF-16 encoded XML with lone high surrogates that consume following code units, hiding markup characters from the parser and enabling XML injection attacks.
漏洞公开时间:2026-09-20 07:17:10
漏洞创建时间:2026-09-20 07:50:05
漏洞详情参考链接:
https://nvd.nist.gov/vuln/detail/CVE-2026-93990

更多参考(点击展开)
参考来源 参考链接 来源链接
https://github.com/libexpat/libexpat/releases/tag/R_2_8_5
https://github.com/libexpat/libexpat
https://github.com/libexpat/libexpat/commit/ff6e1d7e750bbe245178f51a47a965dc8342861a
https://github.com/libexpat/libexpat/pull/1282
https://www.vulncheck.com/advisories/expat-through-2.8.4-malformed-utf-16-acceptance-via-unchecked-surrogate
https://blog.hartwork.org/posts/expat-2-8-5-released/

漏洞分析指导链接:
https://atomgit.com/openeuler/cve-manager/blob/master/cve-vulner-manager/doc/md/manual.md
漏洞数据来源:
其他
漏洞补丁信息:

详情(点击展开)
影响的包 修复版本 修复补丁 问题引入补丁 来源
libexpat/libexpat https://github.com/libexpat/libexpat/commit/ff6e1d7e750bbe245178f51a47a965dc8342861a ljqc
https://github.com/libexpat/libexpat/commit/ff6e1d7e750bbe245178f51a47a965dc8342861a circl
https://github.com/libexpat/libexpat/pull/1282 vuldb

二、漏洞分析结构反馈
影响性分析说明:
Expat through 2.8.4 fails to validate low surrogates following high surrogates in UTF-16 input, allowing malformed UTF-16 sequences to be accepted. Attackers can craft UTF-16 encoded XML with lone high surrogates that consume following code units, hiding markup characters from the parser and enabling XML injection attacks.
openEuler评分:
8.7
Vector:CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
受影响版本排查(受影响/不受影响):
1.master(2.8.4):受影响
2.openEuler-20.03-LTS-SP4(2.2.9):受影响
3.openEuler-22.03-LTS-SP4(2.4.1):受影响
4.openEuler-24.03-LTS-Next(2.8.4):受影响
5.openEuler-24.03-LTS-SP1(2.5.0):受影响
6.openEuler-24.03-LTS-SP3(2.5.0):受影响
7.openEuler-24.03-LTS-SP4(2.8.1):受影响

修复是否涉及abi变化(是/否):
1.master(2.8.4):否
2.openEuler-20.03-LTS-SP4(2.2.9):否
3.openEuler-22.03-LTS-SP4(2.4.1):否
4.openEuler-24.03-LTS-Next(2.8.4):否
5.openEuler-24.03-LTS-SP1(2.5.0):否
6.openEuler-24.03-LTS-SP3(2.5.0):否
7.openEuler-24.03-LTS-SP4(2.8.1):否

原因说明:
1.master(2.8.4):正常修复
2.openEuler-20.03-LTS-SP4(2.2.9):正常修复
3.openEuler-22.03-LTS-SP4(2.4.1):正常修复
4.openEuler-24.03-LTS-Next(2.8.4):正常修复
5.openEuler-24.03-LTS-SP1(2.5.0):正常修复
6.openEuler-24.03-LTS-SP3(2.5.0):正常修复
7.openEuler-24.03-LTS-SP4(2.8.1):正常修复

likedislike
OopenLiBingCI成员
13 天前 添加了label:CVE/UNFIXED
openeuler-ci-bot
openeuler-ci-bot成员
13 天前 评论:

issue处理注意事项:
1. 提交正常修复分支的修复PR时,必须关联当前issue,否则无法关闭当前issue;
2. 模板内容需要填写完整, 无论是受影响或者不受影响都需要填写完整内容;
3. 以下为模板中需要填写完整的内容, 请复制到评论区回复;
注: 内容的关键词(影响性分析说明, openEuler评分, 受影响版本排查(受影响/不受影响), 修复是否涉及abi变化(是/否), 原因说明)不能省略,省略后cve-manager将无法正常解析填写内容.


影响性分析说明:

openEuler评分: (评分和向量)

受影响版本排查(受影响/不受影响):
1.master(2.8.4):
2.openEuler-20.03-LTS-SP4(2.2.9):
3.openEuler-22.03-LTS-SP4(2.4.1):
4.openEuler-24.03-LTS-Next(2.8.4):
5.openEuler-24.03-LTS-SP1(2.5.0):
6.openEuler-24.03-LTS-SP3(2.5.0):
7.openEuler-24.03-LTS-SP4(2.8.1):

修复是否涉及abi变化(是/否):
1.master(2.8.4):
2.openEuler-20.03-LTS-SP4(2.2.9):
3.openEuler-22.03-LTS-SP4(2.4.1):
4.openEuler-24.03-LTS-Next(2.8.4):
5.openEuler-24.03-LTS-SP1(2.5.0):
6.openEuler-24.03-LTS-SP3(2.5.0):
7.openEuler-24.03-LTS-SP4(2.8.1):

原因说明:
1.master(2.8.4):
2.openEuler-20.03-LTS-SP4(2.2.9):
3.openEuler-22.03-LTS-SP4(2.4.1):
4.openEuler-24.03-LTS-Next(2.8.4):
5.openEuler-24.03-LTS-SP1(2.5.0):
6.openEuler-24.03-LTS-SP3(2.5.0):
7.openEuler-24.03-LTS-SP4(2.8.1):


原因说明填写请参考下方表格(注意:版本是否受影响和版本的原因说明必须对应,例如master版本分支受影响,那原因说明只能是受影响对应的原因之一!):

分支状态
原因说明 使用场景
受影响 正常修复 受影响且需要修复(包含升级版本修复)的漏洞;
受影响且已经修复的漏洞(历史修复PR也需要关联issue);
若因特殊原因无法修复,应修改原因说明为【不修复-特殊原因】,并在安委会备案相关情况。
受影响 暂不修复-漏洞仍在分析中 已关注到相关漏洞,正在处理,未明确漏洞影响和修复方案。
受影响 暂不修复-暂无解决方案或补丁 当前没有可用的修复或补救措施。【影响性分析】中应包含有关为什么没有修复或补救措施的详细说明、上游相关PR等。
受影响 不修复-超出修复范围 没有漏洞的修复计划。当版本停维、软件包宣布生命周期终止或弃用使用。
受影响 不修复-特殊原因导致不再修复 如存在其他特殊情况不修复相关漏洞,或评估后无法升级修复,应在openEuler社区安全委员会例会进行说明备案。
【影响性分析】中应包含不发布修复的详细说明、特殊情况还应有安委会会议纪要。
不受影响 不受影响-组件不存在 软件不受影响,因为易受攻击的组件不在产品中。
不受影响 不受影响-已有内置的内联控制或缓解措施 内置的内联控制或缓解措施可防止攻击者利用漏洞
不受影响 不受影响-漏洞代码不能被攻击者触发 易受攻击的组件存在,并且该组件包含易受攻击的代码。但是,易受攻击的代码的使用方式使得攻击者无法进行任何预期的攻击。
不受影响 不受影响-漏洞代码不在执行路径 易受影响的代码在执行过程中不可访问,包括产品的非预期状态。产品不使用也不执行的组件。
不受影响 不受影响-漏洞代码不存在 产品不受影响,因为漏洞背后的代码在产品中不存在。与component_not_present不同的是,有问题的组件存在,但由于某种原因(例如安全的编译器选项)使漏洞的特定代码不存在于组件中。

issue处理具体操作请参考:
https://atomgit.com/openeuler/cve-manager/blob/master/cve-vulner-manager/doc/md/manual.md
pr关联issue具体操作请参考:
https://docs.atomgit.com/docs/help/home/org_project/pullrequests/pr-related-issue

likedislike
openeuler-ci-bot
openeuler-ci-bot成员
13 天前 评论:
参考网址 关联pr 状态 补丁链接
https://www.opencve.io/cve/CVE-2026-93990
https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2026-93990
https://security-tracker.debian.org/tracker/CVE-2026-93990
http://www.cnnvd.org.cn/web/vulnerability/queryLds.tag?qcvCnnvdid=CVE-2026-93990
https://nvd.nist.gov/vuln/detail/CVE-2026-93990
https://ubuntu.com/security/CVE-2026-93990NoneNonehttps://discourse.ubuntu.com/c/project

说明:补丁链接仅供初步排查参考,实际可用性请人工再次确认,补丁下载验证可使用CVE补丁工具。
若补丁不准确,烦请在此issue下评论 '/report-patch 参考网址 补丁链接1,补丁链接2' 反馈正确信息,便于我们不断优化工具,不胜感激。
如 /report-patch https://security-tracker.debian.org/tracker/CVE-2021-3997 https://github.com/systemd/systemd/commit/5b1cf7a9be37e20133c0208005274ce4a5b5c6a1

likedislike
openeuler-ci-botopeneuler-ci-bot成员
13 天前 将 licihua、dillon_chen、openLiBingCI、overweight、zhujianwei001、xujing99、shenyangyang 设为负责人
openeuler-ci-botopeneuler-ci-bot成员
13 天前 添加了label:sig/Base-service
此处折叠了61条消息 查看更多
xiaoo_robot
xiaoo_robot
4 天前 评论:

正在自动化处理任务,任务编号:TASK-gitcode__expat-84-20260929164020,指定分支:openEuler-24.03-LTS,使用指定补丁(2个)

⏳ 进度更新 (18:21): 已运行 101 分钟 | 当前阶段: Step 8/8 生成评论

✅ 任务结束 (用时: 101分钟)

likedislike
xiaoo_robot
xiaoo_robot
4 天前 评论:

【任务 #84 · openEuler-24.03-LTS】CVE-2026-93990

1. 是否受影响
结论:受影响。
expat 2.5.0 的 UTF-16 解析不校验代理对:lib/xmltok.c 的 unicode_byte_type()(行 595-615)对高代理项(0xD8-0xDB)仅返回 BT_LEAD4、对低代理项返回 BT_TRAIL,不校验高代理项后是否跟随低代理项;lib/xmltok_impl.c 行 44-47 将 UTF-16 的 IS_INVALID_CHAR 定义为无操作,使畸形代理对被 tokenizer 接受——正是 CVE-2026-93990 描述的漏洞。Step 4 源码影响性分析判为 NEEDS_ADAPTATION:核心修复完全可定位且漏洞模式吻合,漏洞代码存在于本版本源码,需要修复。

分支状态:openEuler-24.03-LTS(2.5.0):受影响

2. 是否有修复补丁
已找到上游修复补丁:

3. 补丁适配情况
本次未生成、也未应用适配补丁。源码影响性分析确认补丁 16 个 hunk 全部位于漏洞路径(xmltok.c 15 处 + xmltok_impl.c 1 处),patch --dry-run -p2 下 15/16 可直接落位(偏移 -2/-3 行),仅两处适配点待处理:

  • 路径前缀差异:补丁头 expat/lib/ 需对齐为 expat-2.5.0/lib/(RPM %autosetup -p1 下需改用 -p2 应用或重写补丁头路径);
  • hunk1 尾随上下文不匹配:'static int checkCharRefNumber(int result);' 在 2.5.0 中为 'static int FASTCALL checkCharRefNumber(int);',需 1 行上下文适配。
    无前置补丁。

4. 是否提交 PR
暂未提交 PR。

5. 流水线失败原因
流水线在 Step 4 git 预检查环节终止(最后检查点为 Step 3: 源码展开 完成):部分补丁无法直接应用于展开后的源码树(rc=2,需要 AI 分析适配),后续流程未能继续。

──────── 复制以下内容回填 issue ────────
受影响版本排查(受影响/不受影响):
1.openEuler-24.03-LTS(2.5.0): 受影响
ABI 变化:否
原因说明:
1.正常修复
────────────────────────────────────────

likedislike
Yyixiangzhike
4 天前 关联了pull request:fix CVE-2026-93990
openeuler-ci-botopeneuler-ci-bot成员
3 天前 关联了pull request:[sync] PR-384: fix CVE-2026-93990
openeuler-ci-botopeneuler-ci-bot成员
3 天前 关联了pull request:[sync] PR-385: update to version 2.8.5