CVE-2026-90885
Apache Camel : traitement d'entités externes XML par Camel-Saxon — XQueryBuilder a analysé un corps de message qui était déjà une javax.xml.transform.Source avec les paramètres de l'analyseur par défaut de Saxon, de sorte qu'une entité externe déclarée dans ce corps a été résolue
- Publié
- 26 oct. 2026
- Mise à jour
- 26 oct. 2026
- Attribution de CNA
- apache
- Preuve observée
- 30 oct. 2026
CVSS primaire
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:NFaible · 30 prochains jours
- Percentile
- 48,6 %
- Date du modèle
- 31 oct. 2026
EPSS est une estimation statistique, et non une certitude ou une mesure d'impact. Combinez-le avec CVSS, le statut KEV, l'exposition et votre environnement.
Résumé
Vulnérabilité de restriction incorrecte des références d'entités externes XML dans le composant Apache Camel Saxon. Ce problème affecte Apache Camel : de 4.0.0 avant 4.18.5, de 4.19.0 avant 4.22.2. XQueryBuilder dans camel-saxon, qui évalue les expressions pour le langage xquery et le composant xquery, construisait sa Configuration Saxon par défaut avec des options d'analyse qui ne définissaient qu'une règle de suppression des espaces blancs, laissant l'analyseur XML à ses valeurs par défaut, selon lesquelles une déclaration DOCTYPE est acceptée et les entités externes sont résolues. Un corps de message de type String ou byte[], ou tout corps lu comme un InputStream, est d'abord transformé en javax.xml.transform.Source par les propres convertisseurs de type XML de Camel, qui configurent l'analyseur contre les entités externes, de sorte que ces corps n'étaient pas affectés. Un corps qui était déjà un Source, en revanche, était transmis à Saxon sans modification, et lorsque ce Source devait encore être analysé, comme le fait un Source basé sur un flux, Saxon l'analysait avec cette Configuration, contournant la protection appliquée aux autres types de corps. Un tel corps survient, par exemple, après qu'une route a converti le message avec convertBodyTo(Source.class), ou lorsqu'un composant ou un processeur plus tôt dans la route définit le corps sur un Source basé sur un flux. Un DOCTYPE avec un sous-ensemble externe, ou une entité externe, déclaré dans ce corps était donc résolu et développé dans le document sur lequel l'expression était évaluée. Un expéditeur externe dont le XML atteint une expression XQuery ou un point de terminaison xquery sous cette forme pouvait lire des fichiers lisibles par le processus Camel et amener le processus à émettre des requêtes vers les hôtes nommés dans le document. Aucune option non par défaut n'est requise, puisque la Configuration par défaut est utilisée chaque fois que la route n'en fournit pas une propre. Il est recommandé aux utilisateurs de mettre à niveau vers la version 4.23.0, qui corrige le problème. Si les utilisateurs sont sur la branche des versions 4.22.x, il leur est suggéré de mettre à niveau vers 4.22.2. Si les utilisateurs sont sur la branche des versions 4.18.x, il leur est suggéré de mettre à niveau vers 4.18.5. La branche des versions 4.14.x et antérieures, ainsi que les lignes de versions 4.15.x à 4.17.x et 4.19.x à 4.21.x, ont atteint leur fin de vie avant que ce problème ne soit résolu et ne recevront pas de correctif, de sorte que les déploiements sur celles-ci doivent migrer vers une version prise en charge. Pour les déploiements qui ne peuvent pas être mis à niveau immédiatement, n'évaluez pas XQuery sur un corps de message qui est déjà un javax.xml.transform.Source lorsque ce corps contient du XML provenant d'un expéditeur non fiable, ou définissez l'option de configuration du point de terminaison ou du langage xquery sur une Configuration Saxon dont les options d'analyse refusent une déclaration DOCTYPE et désactivent les entités externes et le chargement de DTD externes, ce que les versions corrigées appliquent désormais par défaut.
Utilisation responsable
Utilisez les informations de vulnérabilité uniquement sur les systèmes que vous possédez ou que vous êtes autorisé à tester. Kitploit renvoie aux métadonnées de la recherche publique et ne stocke pas de code d'exploitation ni de charges utiles malveillantes.