Summary
CVE-2026-15803 is an XML External Entity (XXE) injection vulnerability in Eclipse RDF4J, an open-source Java framework for processing and querying RDF data. Multiple XML parsing entry points in RDF4J fail to fully restrict DOCTYPE declarations, external entity references, and external DTD loading when processing untrusted XML-based RDF data or SPARQL query results. The flaw is classified as an incomplete remediation of the earlier CVE-2018-1000644 and carries a HIGH severity score of 8.7.
Technical details
- Root cause: RDF4J’s XML parsing code does not consistently disable DOCTYPE declarations, external entity resolution, or external DTD loading across all parsing paths, leaving gaps that were not closed by the original fix for CVE-2018-1000644.
- Affected parsing paths: RDF/XML parsing, TriX format handling, SPARQL/XML query results processing, internal DOM helper parsing, transaction XML parsing, and server-boot web.xml parsing.
- Trigger conditions: An attacker supplies specially crafted XML (RDF/XML, TriX, or SPARQL/XML results) containing malicious DOCTYPE/entity declarations to an application that parses untrusted XML input using vulnerable RDF4J components.
- Attack vector: Network — exploitable remotely wherever an application accepts and parses untrusted XML-based RDF or SPARQL results using an affected RDF4J version.
- Impact: Successful exploitation can lead to disclosure of confidential data (e.g., local file contents via external entity resolution), denial of service (e.g., XML entity expansion/"XML bomb" style resource exhaustion), and server-side request forgery (SSRF) via external DTD/entity fetches to attacker-controlled or internal endpoints.
Affected software
- Eclipse RDF4J: all versions prior to 5.3.2 (semantic versioning)
Severity
- CVSS v4.0 Score: 8.7 (High)
- Vector:
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N - Weakness classifications: CWE-611 (Improper Restriction of XML External Entity Reference), CWE-827 (Improper Control of a Resource Through its Lifetime / DTD control)
Mitigation and recommended actions
- Immediate: Upgrade Eclipse RDF4J to version 5.3.2 or later, which rejects or disables DOCTYPE declarations, external entity resolution, and external DTD loading by default across all affected parsing paths.
- If immediate patching is not possible:
- Avoid parsing XML-based RDF data (RDF/XML, TriX) or SPARQL/XML query results from untrusted or external sources until patched.
- Where custom XML parser configuration is possible, explicitly disable external entity resolution and DOCTYPE processing (e.g., via
XMLConstants.FEATURE_SECURE_PROCESSINGand disabling external general/parameter entities) at every application-level XML entry point that feeds into RDF4J. - Restrict outbound network access from application/server hosts to reduce SSRF impact from any external entity/DTD fetch attempts.
- Monitor logs for anomalous XML payloads containing
<!DOCTYPEorSYSTEM/PUBLICentity declarations sent to RDF4J-based endpoints.

