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-85315 — Reproducteur de preuve de concept exécutable pour CVE-2026-85315, démontrant la divulgation de messages d'exception du consommateur camel-grpc (CWE-209) dans Camel Spring Boot et Quarkus. | Kitploit
Outils/GitHubGitHub/oscerd/cve-2026-85315
Outils DéfensifsScanners de Vulnérabilités WebAnalyse des VulnérabilitésCollecte d'InformationsApprentissage et Éducation
GitHuboscerd/cve-2026-85315

CVE-2026-85315

Reproducteur de preuve de concept exécutable pour CVE-2026-85315, démontrant la divulgation de messages d'exception du consommateur camel-grpc (CWE-209) dans Camel Spring Boot et Quarkus.

Voir le dépôt
2il 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-85315 — camel-grpc : divulgation d'exception par le consumer

Reproducteur de preuve de concept exécutable pour la vulnérabilité Apache Camel où, lorsqu'une route derrière un consumer gRPC échouait, le message de l'exception de la route était copié dans la description du Status gRPC. Contrairement à la cause du statut (withCause(...)), qui reste locale au serveur, la description est transmise au client appelant, de sorte qu'un appelant externe capable de provoquer une défaillance pouvait lire le message d'erreur interne — en pratique, les noms de classes et de packages, les chemins de fichiers, les noms d'hôtes et les détails de connexion portés par les messages d'exception (CWE-209). Il s'agit du membre gRPC de la même famille d'exceptions de consumer non masquées que les avis knative, mina et CXF publiés en parallèle.

RuntimeRépertoireStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-grpc 4.22.0 (affecté ; corrigé en 4.22.1)
Camel Quarkuscamel-quarkus/Quarkus 3.39.0 + camel-quarkus-grpc (Camel 4.22.0, affecté ; contrôle corrigé CQ 3.40.0 / Camel 4.22.1)

Les deux modules démontrent le comportement affecté et corrigé face au véritable consumer camel-grpc.

Ce que cela démontre

Chaque module exécute un consumer camel-grpc (le service PingPong issu du propre proto de test de camel-grpc) dont la route échoue toujours avec un message d'apparence interne :

Internal failure contacting jdbc:postgresql://db.internal.local:5432 (user=svc_admin) [CVE-2026-85315]

Le point de terminaison du vérificateur /exploit/attack joue le rôle d'un client gRPC externe : il appelle PingSyncSync, intercepte la StatusRuntimeException et rapporte le code Status ainsi que la description renvoyés par le serveur.

  • Vulnérable : la description du statut correspond mot pour mot au message de l'exception de la route — l'URL du magasin de stockage et le compte de service fuient vers le client.
  • Corrigé : la nouvelle option de consommateur muteException vaut true par défaut, de sorte que la description est la valeur générique "Exchange processing failed" et que le message réel ne quitte jamais le serveur (il n'est conservé que dans la cause du statut, locale uniquement).
# Camel Spring Boot
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: description leaks the internal message; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85315-grpc-exception-disclosure-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: description is "Exchange processing failed"; >>> 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.22.0): description leaks the internal message
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: description is "Exchange processing failed"

Chaque module expose le vérificateur sur 8080 et exécute le consommateur camel-grpc sur 50051 au sein du même processus ; seul 8080 est publié.

Résumé de la vulnérabilité

PropriétéValeur
Composantcamel-grpc (GrpcMethodHandler, consommateur)
CWECWE-209 (Génération de message d'erreur contenant des informations sensibles)
GravitéMOYENNE
Vecteur d'attaqueUn client gRPC externe provoque l'échec d'une route et lit la description Status transmise
ImpactDes détails d'erreur internes (noms de classes/paquets, chemins, noms d'hôtes, détails de connexion) sont divulgués à l'appelant
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-24478
CréditClaude Security Scan Tool

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

Le module Quarkus affecté est construit sur CQ 3.39.0 (Camel 4.22.0). Le correctif de contrôle est CQ 3.40.0 (Camel 4.22.1).

Le correctif

GrpcMethodHandler ajoute une option de consommateur muteException (par défaut true). Lorsqu'elle est activée, un échange en échec produit la description générique "Exchange processing failed" dans le statut transmis ; l'exception de la route reste attachée localement via withCause(...), que gRPC ne transmet pas au client. Définissez muteException=false sur l'endpoint pour restaurer le comportement précédent.

Atténuation si vous ne pouvez pas mettre à jour

Mappez les échecs sur un statut explicite dans un gestionnaire onException afin que le framework ne copie jamais le message de l'exception dans la description.

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 message « interne » est un espace réservé bénin (db.internal.local, svc_admin) et l'ensemble de la démonstration s'exécute dans un seul processus. 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