CVE-2026-32776CVE-2026-32776是libexpat XML解析库中的一个安全漏洞。该漏洞影响libexpat 2.7.5之前的所有版本,允许攻击者通过构造包含空外部参数实体内容的恶意XML文档来触发NULL指针解引用。libexpat是一个广泛使用的开源XML解析库,被众多应用程序和系统依赖用于处理XML文档。由于该漏洞位于XML解析的核心组件中,攻击者可以通过诱导目标系统解析特制的XML文件来触发拒绝服务条件。在CVSS 3.1评分体系中,该漏洞获得4.0分的中等级别评分,主要因为其攻击向量为本地且可用性影响较低。攻击复杂度低且无需认证或用户交互即可利用,这使得该漏洞在特定场景下具有一定威胁性。建议受影响用户尽快升级到libexpat 2.7.5或更高版本以修复此安全缺陷。
libexpat在处理XML文档中的外部参数实体时存在NULL指针解引用漏洞。当解析器遇到空的外部参数实体内容时,如果外部实体引用未正确初始化或指向NULL,可能导致在解引用操作时触发程序崩溃。具体而言,当XML文档包含类似<!ENTITY % name SYSTEM "">的声明时,libexpat的XML_ExternalEntityParserCreate函数可能返回一个指向NULL的解析器上下文。随后在调用XML_Parse或相关解析函数时,对该NULL指针进行操作会导致应用程序崩溃。该漏洞的技术根源在于libexpat对外部参数实体的处理逻辑缺乏对NULL情况的充分检查。攻击者可以利用此漏洞通过让目标应用程序解析包含恶意XML内容的文件(如SVG、XML配置文件等)来触发拒绝服务。由于libexpat被许多编程语言和应用程序间接依赖,攻击者可能通过多种途径传递恶意XML文档。此漏洞已在libexpat的GitHub仓库PR #1158和#1159中得到修复。