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-84180 — Reproducteurs exécutables Spring Boot et Quarkus pour CVE-2026-84180, démontrant la fuite d'exceptions du consommateur HTTP camel-knative et vérifiant le correctif muteException. | Kitploit
Outils/GitHubGitHub/oscerd/cve-2026-84180
Outils DéfensifsAnalyse des VulnérabilitésCollecte d'InformationsSécurité WebApprentissage et Éducation
GitHuboscerd/cve-2026-84180

CVE-2026-84180

Reproducteurs exécutables Spring Boot et Quarkus pour CVE-2026-84180, démontrant la fuite d'exceptions du consommateur HTTP camel-knative et vérifiant le correctif muteException.

Voir le dépôt
4il 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-84180 — camel-knative : divulgation d'informations par le consumer HTTP (exception renvoyée à l'appelant)

Reproducteur de preuve de concept exécutable pour la vulnérabilité Apache Camel où le consumer HTTP Knative, lorsqu'un échange échouait côté consumer, écrivait l'exception résultante dans le corps de la réponse HTTP renvoyée à l'appelant distant — y compris son nom de classe, son message et la trace de pile complète. Un émetteur externe pouvait donc provoquer une défaillance et lire des détails internes sur le déploiement : noms de classes et de packages, noms de systèmes de fichiers ou d'hôtes portés par les messages d'exception, la structure de la route, et — lorsqu'un message d'exception intègre une chaîne de connexion ou une configuration — ces données directement. camel-knative était le dernier consumer de la famille HTTP qui n'avait pas été aligné sur le comportement muteException établi pour les autres consumers HTTP par CAMEL-23651.

RuntimeRépertoireStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-knative 4.22.0 (affecté ; corrigé en 4.22.1), consumer sur le serveur platform-http Vert.x de Camel
Camel Quarkuscamel-quarkus/Quarkus 3.29.0 + camel-quarkus-knative (Camel 4.15.0, affecté ; contrôle corrigé CQ 3.40.0 / Camel 4.22.1), consumer sur Quarkus HTTP

Les deux modules démontrent le comportement affecté et le comportement corrigé.

Ce que cela démontre

Une route source (consumer) HTTP Knative reçoit un CloudEvent puis échoue lors de son traitement — représentant n'importe quelle route qui rencontre une erreur interne (une recherche de source de données échouée, un timeout en aval, un bug). La route lève une IllegalStateException dont le message porte des détails internes simulés : un faux nom d'hôte interne (internal-db.prod.svc.cluster.local), une fausse URL JDBC et un jeton marqueur INTERNAL-DETAIL-MARKER-7F3A2B. L'attaquant n'est autre qu'un appelant distant : il envoie en POST un CloudEvent bien formé au consumer et lit la réponse que le consumer renvoie.

  • Affecté : la réponse est HTTP 500 avec la trace de pile complète comme corps — le nom de classe de l'exception, le message (nom d'hôte interne + jeton marqueur), et les frames de pile at com.example... / du framework.
  • Corrigé : la réponse est HTTP 500 avec un corps vide — le consumer respecte désormais muteException (par défaut true), de sorte que le statut d'erreur est renvoyé mais aucun détail d'exception n'atteint l'appelant.
# Camel Spring Boot
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack      # affected: stack trace leaks; prints >>> PROVEN
docker compose down
# Patched control: rebuild with the fixed version, then run on the host
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-84180-knative-info-disclosure-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack      # fixed: empty body; prints >>> Not exploited
# Camel Quarkus
cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack      # affected (Camel 4.15.0): stack trace leaks; >>> PROVEN
docker compose down
# Patched control: CQ 3.40.0 ships Camel 4.22.1
mvn clean package -Dcamel-quarkus.version=3.40.0 -Dquarkus.platform.version=3.40.0
java -jar target/quarkus-app/quarkus-run.jar &
curl -s http://localhost:8080/exploit/attack      # fixed: empty body; >>> Not exploited

Résumé de la vulnérabilité

PropriétéValeur
Composantcamel-knative (consommateur HTTP Knative, KnativeHttpConsumer.computeResponseBody)
CWECWE-209 (Génération de message d'erreur contenant des informations sensibles)
GravitéMOYENNE
Vecteur d'attaqueUn appelant distant provoque un échec de route côté consommateur et lit le détail de l'exception dans le corps de la réponse
ImpactDivulgation d'informations : la classe/le message/la trace de pile de l'exception (noms d'hôtes internes, noms de paquets, forme de la route, chaînes de connexion intégrées) parviennent à un expéditeur externe
Versions affectéesÀ partir de 4.0.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-24428
CréditClaude Security Scan Tool

Avis : https://camel.apache.org/security/CVE-2026-84180.html

Le correctif

KnativeHttpConsumer.computeResponseBody vérifie désormais une nouvelle option muteException (consommateur, valeur par défaut true). Lorsqu'elle est activée, un échange en échec produit un corps de réponse vide (new byte[0]) plutôt que la trace de pile — le corps vide est délibéré afin que le statut d'erreur soit préservé (un corps null ferait envoyer 204 No Content par l'appelant). Définissez muteException=false pour restaurer la sortie précédente. Cela aligne camel-knative sur les autres consommateurs de la famille HTTP (CAMEL-23651).

Atténuation si vous ne pouvez pas mettre à niveau

Ajoutez un gestionnaire onException à la route du consommateur qui définit explicitement le corps de la réponse (par exemple à un corps vide ou à un message générique), afin que le framework ne réécrive jamais l'exception vers l'appelant.

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 à niveau la résout. Le nom d'hôte « interne », l'URL JDBC et le jeton marqueur dans la route en échec sont des fixtures locales inertes et inventées — aucun véritable secret n'est impliqué. 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