Severity:
CVSS 3.1: 7.5 (high) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Affected versions:
- Apache Camel (org.apache.camel:camel-xpath) 4.0.0 before 4.18.5
- Apache Camel (org.apache.camel:camel-xpath) 4.19.0 before 4.22.1
- Apache Camel (org.apache.camel:camel-xpath) 4.18.5 unaffected
- Apache Camel (org.apache.camel:camel-xpath) 4.22.1 unaffected
- Apache Camel (org.apache.camel:camel-xpath) 4.23.0 unaffected
Description:
Improper Restriction of XML External Entity Reference vulnerability in Apache
Camel XPath component.
This issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before
4.22.1.
With documentType set to InputSource, XPathBuilder handed the payload straight
to javax.xml.xpath, which builds a DocumentBuilder of its own using the JDK
defaults. The hardening applied to Camel's default document type was therefore
bypassed: a DOCTYPE declaration that is refused on the default type was
accepted here, and the external entity it declared was resolved and expanded
into the evaluated document. An external sender whose XML reaches such an
expression could read files readable by the Camel process and cause the process
to issue requests to hosts it names. The two document types disagreeing on
parser configuration is what made this reachable, since a deployment choosing
InputSource for streaming reasons had no indication it was also choosing a
weaker parser.
Upgrade to Apache Camel 4.23.0, which fixes the issue. Users on the 4.18.x LTS
releases stream should upgrade to 4.18.5. Users on the 4.22.x LTS releases
stream should upgrade to 4.22.1. The InputSource document type now goes through
the same hardened parser as the default type, so a DOCTYPE is refused. Note
that it also shares that type's documented escape hatch: the same
DocumentBuilderFactory system properties that relax the default type relax this
one, so a deployment that has set them remains unprotected by design. For
deployments that cannot upgrade immediately, do not use
documentType=InputSource on expressions evaluated over untrusted XML; the
default document type already refuses a DOCTYPE.
Solution:
Upgrade to Apache Camel 4.23.0, which fixes the issue. Users on the 4.18.x LTS
releases stream should upgrade to 4.18.5. Users on the 4.22.x LTS releases
stream should upgrade to 4.22.1. The InputSource document type now goes through
the same hardened parser as the default type, so a DOCTYPE is refused. Note
that it also shares that type's documented escape hatch: the same
DocumentBuilderFactory system properties that relax the default type relax this
one, so a deployment that has set them remains unprotected by design.
Work Arounds:
For deployments that cannot upgrade immediately, do not use
documentType=InputSource on expressions evaluated over untrusted XML; the
default document type already refuses a DOCTYPE.
Credit:
Claude Security (finder)
Andrea Cosentino (remediation developer)
References:
https://camel.apache.org/security/CVE-2026-85250.html
https://issues.apache.org/jira/browse/CAMEL-24475
https://github.com/apache/camel/pull/25683
https://github.com/apache/camel/pull/25940
https://github.com/apache/camel/pull/25942
https://camel.apache.org/
https://www.cve.org/CVERecord?id=CVE-2026-85250