XML External Entity Injection in Apache Camel Smooks
CVE-2026-88901 is an XML external entity vulnerability in Apache Camel's camel-smooks component affecting versions 4.7.0 through versions before 4.18.5 and 4.19.0 through versions before 4.22.1. The Smooks data format unmarshalling operation and component endpoint pass incoming XML to the default Woodstox SAX reader without disabling external general entities, external parameter entities, or external DTD loading. Attacker-controlled XML containing an external entity declaration or DOCTYPE external subset can therefore cause local file reads or requests to internal network locations. Resolved content is incorporated into the unmarshalled result and can be returned through InOut routes. Configurations explicitly declaring EDI, CSV, JSON, or custom readers do not use the affected default XML reader.
What it means and what to do now: patch path, interim mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
Successful exploitation can disclose files readable by the Camel process and enable server-side request forgery to attacker-selected hosts, including internal services reachable from the application. On InOut routes, resolved external content can be returned to the sender in the unmarshalled response. File access is constrained by the Camel process's permissions, and network access by its connectivity.
If you can’t patch tonight, do this now.
Until upgrading, do not process XML from untrusted senders with camel-smooks. Configurations explicitly using EDI, CSV, JSON, or custom readers do not use the affected default XML reader and are outside the scope of this vulnerability.
Patch, then assume compromise.
Upgrade to Apache Camel 4.23.0, 4.18.5 for the 4.18.x LTS stream, or 4.22.1 for the 4.22.x LTS stream. These releases securely parse XML with a DocumentBuilder that disables external general entities, external parameter entities, and external DTD loading before passing the resulting document to Smooks. Keep allowExternalEntities disabled; enabling it restores the previous behavior and is intended only for trusted legacy configurations. Affected deployments on the end-of-life 4.14.x and earlier streams must migrate to a supported fixed release.
No validated public exploits yet. Hidden: 1 rejected by Mallory's analysis as not a working exploit.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
5 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.