home / blog
2026-10-29 · alta
CVE-2026-90885: XXE in Apache Camel Saxon XQuery
XXE in Apache Camel Saxon XQuery. Lettura file e SSRF possibili. Fix per versioni supportate.

CVE-2026-90885 identifica una falla nel componente camel-saxon di Apache Camel, in XQueryBuilder. La vulnerabilità è Improper Restriction of XML External Entity Reference (CWE-611): quando il corpo del messaggio è un javax.xml.transform.Source, Camel lo passa a Saxon senza protezione XXE, consentendo l'espansione di entità esterne nel XML. Colpisce route XQuery che elaborano dati da sender esterni non fidati, specialmente con body convertito a Source o stream-based Source.
La vulnerabilità ha CVSS 7,5 (HIGH), pubblicata su NVD il 2026-10-26. Lo stesso giorno di questo articolo è comparso un reproducer pubblico su GitHub che ne conferma la riproducibilità. L'attacco sfrutta la Saxon Configuration di default senza richiedere configurazioni non-standard. Versioni da 4.0.0 a quelle precedenti 4.22.2 risultano vulnerabili. Un attaccante può leggere file accessibili a Camel e causare richieste outbound verso host dichiarati nel DOCTYPE.
Upgrade immediato per le versioni supportate: 4.23.0 (consigliato), 4.22.2 (ramo 4.22.x), 4.18.5 (ramo 4.18.x). I rami 4.14.x e precedenti, 4.15.x-4.17.x e 4.19.x-4.21.x sono EOL senza patch e richiedono migrazione. Nel frattempo, non elaborare XQuery su Source con XML da sender non fidati. Mitigazione temporanea: configurare camel-saxon con una Saxon Configuration che rifiuta DOCTYPE e disabilita external entities.
In sintesi
- Cosa
- Improper Restriction of XML External Entity Reference (CWE-611) nel componente camel-saxon. XQueryBuilder non applica protezioni XXE quando il body del messaggio è già un javax.xml.transform.Source, consentendo l'espansione di entità esterne dichiarate nel XML.
- Gravità
- CVSS 7,5 (HIGH). Impatto: confidentiality (lettura file), integrity (manipolazione), availability (DoS). Richiede XML di input esterno non trusted e body come Source già costruito.
- Versioni interessate
- Apache Camel da 4.0.0 prima di 4.18.5, e da 4.19.0 prima di 4.22.2. EOL senza patch: 4.14.x e precedenti, 4.15.x-4.17.x, 4.19.x-4.21.x.
- Correzione
- Upgrade a: 4.23.0 (ultima), 4.22.2 (series 4.22.x), 4.18.5 (series 4.18.x). Configurazione esplicita con Saxon Configuration che nega DOCTYPE e disabilita external entities come workaround temporaneo.
- Stato
- Verificato e confermato. Reproducer pubblico su GitHub (2026-10-29). Patch disponibile per versioni supportate dal 2026-10-26.
- Azione
- 1. Inventariare deployment di Apache Camel. 2. Identificare versioni affette. 3. Per versioni supportate: pianificare upgrade entro 30 giorni. 4. Per EOL: pianificare migrazione. 5. In interim: non processare XQuery su Source con XML untrusted. 6. Configurare Saxon con external entities disabilitati.
Fonti: NVD, CVE-2026-90885