CVE-2026-34601 影响 @xmldom/xmldom,允许攻击者控制的字符串(包含 CDATA 终止符 ]]>)插入到 CDATASection 节点中。在序列化期间,XMLSerializer 会逐字发出 CDATA 内容,而不拒绝或安全地拆分终止符。因此,原本仅为文本的数据在序列化输出中变为活动 XML 标记,从而实现 XML 结构注入和下游业务逻辑操作。此漏洞影响 0.6.0 及更早版本。目前尚无官方补丁可用,建议采取缓解措施。
CVE-2026-34601 在 @xmldom/xmldom 中允许攻击者将包含 CDATA 终止符 ]]> 的攻击者控制字符串插入到 CDATASection 节点中。在序列化过程中,XMLSerializer 未能拒绝或安全地分割终止符,而是按原样输出了 CDATA 内容。结果,原本意图作为纯文本的数据变成了序列化输出中的 活动 XML 标记,从而实现了 XML 结构注入和随后的业务逻辑操作。]]> 序列在 CDATA 内部是不允许的。
此漏洞是通过在 CDATASection 节点中插入包含 ]]> 的恶意字符串来利用的。当 XMLSerializer 序列化文档时,它错误地将 ]]> 解释为 CDATA 部分的结尾和新的 XML 元素的开始。这使得攻击者能够在文档中注入任意 XML 元素。利用成功的关键取决于攻击者控制传递给 @xmldom/xmldom 的输入的能力以及处理 XML 输出的应用程序的漏洞。利用可能发生在处理用户提供的 XML 数据的 Web 应用程序中,或在任何使用 @xmldom/xmldom 生成 XML 的进程中。
Applications built on Node.js that utilize the @xmldom/xmldom library for XML processing are at risk. This includes applications that parse XML data from external sources, such as APIs or user uploads, without proper validation. Shared hosting environments where multiple applications share the same Node.js runtime are particularly vulnerable, as a compromise of one application could potentially impact others.
• nodejs / server:
ps aux | grep xmldom
find / -name "*xmldom*" -type d -print• generic web:
curl -I <your_application_url> | grep XML
grep -r 'CDATA[[]]' /var/log/apache2/access.logdisclosure
漏洞利用状态
EPSS
0.05% (17% 百分位)
CISA SSVC
目前,CVE-2026-34601 没有可用的修复程序 (fix)。主要缓解措施是避免使用 @xmldom/xmldom 处理不受信任的数据。如果必须使用该库,请在创建 CDATASection 节点之前严格清理任何输入数据。这包括删除或转义终止符 ]]>。此外,在可用时,请考虑升级到库的更安全版本。监控 @xmldom/xmldom 的安全更新对于在发布修复程序后立即应用该修复程序至关重要。在没有直接修复的情况下,输入验证和清理是最重要的防御措施。
Actualizar la biblioteca xmldom a la versión 0.6.0 o superior, o a las versiones 0.8.12 o 0.9.9 o superior, según corresponda, para corregir la vulnerabilidad de inyección XML. Esto evitará que cadenas controladas por el atacante se inserten en nodos CDATASection y se interpreten como marcado XML activo.
漏洞分析和关键警报直接发送到您的邮箱。
CDATA (Character Data) 是 XML 文档中的一个部分,用于包含不应被解释为 XML 标记的文本。
它允许攻击者修改 XML 文档的结构,这可能导致业务逻辑操作,甚至可能导致代码执行。
避免处理不受信任的数据,并在创建 CDATASection 节点之前严格清理任何输入。监控安全更新。
没有直接的修复。输入清理是最佳的临时缓解措施。
检查使用 @xmldom/xmldom 的代码,以识别任何在 CDATASection 节点中处理不受信任数据的位置。
CVSS 向量