CVE-2026-95629
Apache Camel : l'en-tête de chemin de sortie non validé de Camel-Docling permet d'écrire la sortie de conversion dans un répertoire arbitraire
- 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:L/UI:N/S:U/C:N/I:L/A:LFaible · 30 prochains jours
- Percentile
- 26,9 %
- Date du modèle
- 29 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 limitation incorrecte d'un nom de chemin à un répertoire restreint (« Path Traversal ») dans le composant Apache Camel Docling. Ce problème affecte Apache Camel : de 4.15.0 avant 4.18.5, de 4.19.0 avant 4.22.2. DoclingProducer exécute l'outil externe docling en mode CLI, le mode par défaut, et lui indique où écrire le document converti via l'option --output. Lorsque l'en-tête CamelDoclingOutputFilePath était défini, addOutputDirectoryArguments transmettait sa valeur à cette option telle quelle : la valeur n'était pas normalisée, un chemin absolu ou un chemin contenant des segments .. était accepté tel quel, et aucune option de point de terminaison ne pouvait le confiner à un répertoire. La validation des arguments personnalisés ajoutée par le correctif de CVE-2026-40047 refuse les options --output et -o dans l'en-tête CamelDoclingCustomArguments et indique aux appelants de choisir le répertoire de sortie avec cet en-tête à la place, de sorte que la seule valeur qui décide où docling écrit atteignait la ligne de commande sans aucun des contrôles appliqués aux arguments personnalisés. Docling écrit le résultat de la conversion, au format Markdown, HTML, JSON ou texte, dans ce répertoire, en nommant le fichier d'après le fichier d'entrée, et le producteur supprime ensuite uniquement son propre répertoire temporaire, de sorte que le fichier est laissé en place. Une partie capable de définir l'en-tête pouvait donc faire créer une sortie de conversion dans n'importe quel répertoire dans lequel le processus Camel peut écrire. Le contenu d'un tel fichier est la conversion du document transporté par le message, il est donc façonné par celui qui fournit ce document sans être écrit octet par octet, et lorsque le contenu du document arrive dans le corps du message, le producteur le stocke sous un nom temporaire aléatoire, que le fichier de sortie porte ensuite. L'en-tête appartient à l'espace de noms des en-têtes Camel, que les consommateurs appliquant le filtrage d'en-têtes par défaut de Camel, tels que les consommateurs JMS et Kafka, suppriment des messages entrants, de sorte que le problème est atteint lorsqu'une route transmet des valeurs influencées de l'extérieur dans l'en-tête ou lorsqu'un consommateur mappe les en-têtes entrants sans ce filtrage. Le mode docling-serve n'utilise pas l'en-tête. 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. Le correctif ajoute une option de point de terminaison outputBaseDirectory qui n'est pas définie par défaut, donc après la mise à niveau, définissez-la sur chaque point de terminaison docling dont l'en-tête CamelDoclingOutputFilePath peut porter une valeur influencée depuis l'extérieur du déploiement ; sans elle, l'en-tête est normalisé mais peut toujours désigner n'importe quel répertoire. Les lignes de versions 4.15.x à 4.17.x et 4.19.x à 4.21.x ont atteint leur fin de vie avant la résolution de ce problème et ne recevront pas de correctif, les déploiements sur celles-ci doivent donc migrer vers une version prise en charge. Pour les déploiements qui ne peuvent pas être mis à niveau immédiatement, ne construisez pas l'en-tête CamelDoclingOutputFilePath à partir de valeurs provenant de l'extérieur du déploiement, supprimez cet en-tête des messages arrivant de l'extérieur avant qu'ils n'atteignent un point de terminaison docling, et assurez-vous que les consommateurs qui mappent les en-têtes de messages entrants suppriment l'espace de noms des en-têtes Camel, afin que seule la route elle-même choisisse le répertoire de sortie.
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.