Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-88901 — Preuve de concept Spring Boot exécutable reproduisant CVE-2026-88901, une faille XXE (CWE-611) dans Apache Camel camel-smooks, avec des exécutions de contrôle affectées et corrigées. | Kitploit
Outils/GitHubGitHub/oscerd/cve-2026-88901
Outils DéfensifsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebApprentissage et Éducation
GitHuboscerd/cve-2026-88901

CVE-2026-88901

Preuve de concept Spring Boot exécutable reproduisant CVE-2026-88901, une faille XXE (CWE-611) dans Apache Camel camel-smooks, avec des exécutions de contrôle affectées et corrigées.

Voir le dépôt
3il y a 1 jourPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-88901 — camel-smooks : traitement des entités externes XML (XXE)

Reproducteur de preuve de concept exécutable pour la vulnérabilité Apache Camel où le format de données Smooks (.unmarshal().smooks(...)) et le composant Smooks (smooks:) analysaient le corps XML entrant avec le lecteur que Smooks résout par défaut (le parseur SAX Woodstox), qui résout les entités générales et paramètres externes et charge les DTD externes — et camel-smooks n'appliquait aucun des durcissements de parseur appliqués par les autres composants XML de Camel. Un DOCTYPE avec un sous-ensemble externe, ou une entité générale externe, déclaré dans le document XML est donc résolu et développé lors du démarshalling du corps, et le contenu résolu est lié au résultat. Un expéditeur externe dont le XML atteint un format de données ou un endpoint camel-smooks pourrait lire des fichiers lisibles par le processus Camel, ou faire en sorte que le processus émette des requêtes vers des hôtes internes (CWE-611). Aucune option non par défaut n'est requise — la résolution des entités externes était le comportement par défaut.

Spring Boot uniquement. Ce reproducteur fournit un unique module Camel Spring Boot. camel-smooks n'a pas d' extension camel-quarkus-smooks, il n'y a donc pas d'équivalent Quarkus à reproduire. Le module Spring Boot démontre le comportement affecté et le comportement corrigé.

RuntimeRépertoireStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-smooks 4.22.0 (affecté ; corrigé en 4.22.1)

Ce que cela démontre

Le pilote reproduit le propre test de régression du correctif (SmooksDataFormatXmlSecurityTest). Un fichier marqueur bénin est écrit dans un répertoire temporaire, et un document XML <customer> est démarshalé via le véritable SmooksDataFormat avec le smooks-config.xml standard (liant le document à un bean Customer). Le firstName du document est une entité externe pointant vers le fichier marqueur :

<!DOCTYPE customer [<!ENTITY xxe SYSTEM "file:///…/secret.txt">]>
<customer><firstName>&xxe;</firstName>…</customer>
  • Affected : l'entité est résolue, donc le contenu du fichier marqueur est lié dans Customer.firstName — le fichier a fuité dans le bean désérialisé.
  • Fixed : le corps est pré-analysé avec un DocumentBuilder durci (entités externes et chargement de DTD externe désactivés), donc l'entité n'est pas résolue et le marqueur n'apparaît jamais.
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: firstName = the marker file content; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-88901-smooks-xxe-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: firstName null, marker not leaked; >>> Not exploited

Résumé de la vulnérabilité

PropriétéValeur
Composantcamel-smooks (format de données et composant Smooks)
CWECWE-611 (Restriction inappropriée de la référence d'entité externe XML)
SévéritéÉLEVÉE
Vecteur d'attaqueUn expéditeur externe fournit le corps du message XML désérialisé par un format de données ou un endpoint camel-smooks utilisant le lecteur XML par défaut
ImpactLecture de fichiers locaux accessibles au processus Camel ; SSRF vers des hôtes internes nommés par le document
Versions affectéesÀ partir de 4.7.0 avant 4.18.5, à partir de 4.19.0 avant 4.22.1
Versions corrigées4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24677
Signalé parh1ei1

Avis de sécurité : https://camel.apache.org/security/CVE-2026-88901.html

Le correctif

camel-smooks pré-analyse désormais le XML non fiable avec un javax.xml.parsers.DocumentBuilder configuré avec FEATURE_SECURE_PROCESSING et avec les entités générales externes, les entités de paramètre externes et le chargement de DTD externes désactivés, puis transmet à Smooks le DOM résultant — en adéquation avec la configuration sécurisée utilisée par XmlConverter et les autres composants XML de Camel. Le durcissement ne s'applique que lorsque la configuration Smooks analyse le XML avec son lecteur par défaut (ainsi les configurations EDI, CSV, JSON et à lecteur personnalisé, ainsi que la direction de marshalling, restent inchangées). Une nouvelle option allowExternalEntities, désactivée par défaut, restaure le comportement précédent pour les configurations héritées de confiance.

Atténuation si vous ne pouvez pas mettre à jour

N'appliquez pas camel-smooks à du XML reçu d'expéditeurs non fiables.

Avertissement

Ce dépôt est publié à des fins éducatives et défensives : pour aider les utilisateurs d'Apache Camel à comprendre la vulnérabilité, à vérifier s'ils sont affectés et à confirmer que la mise à jour la résout. Le fichier « secret » est créé par le reproducteur lui-même dans un répertoire temporaire et ne contient qu'une chaîne marqueur bénigne ; il est supprimé après la vérification. N'utilisez pas ce matériel contre des systèmes que vous ne possédez pas ou n'exploitez pas.

Télécharger l’outil