
Reproducteur pour CVE-2026-48206 : injection d'en-tête IssueKey (et autres non préfixés par Camel) dans Apache Camel camel-jira permettant d'exécuter des opérations arbitraires sur les issues JIRA avec les identifiants de compte de service du endpoint (corrigé dans les versions 4.14.8/4.18.3/4.21.0)
IssueKeyReproducteurs de preuve de concept exécutables pour la même vulnérabilité Apache Camel, un par runtime :
| Runtime | Répertoire | Stack |
|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (embarque Camel 4.20.0) |
Les deux sont des versions affectées (corrigées en 4.14.8 / 4.18.3 / 4.21.0), et elles démontrent toutes deux le même défaut : les producteurs camel-jira lisent leurs paramètres d'opération (clé du ticket, clé du projet, identifiant de transition, …) depuis les en-têtes de message Exchange dont les constantes — IssueKey, ProjectKey, IssueTransitionId, … — sont des chaînes nues, sans préfixe Camel. Le filtre de frontière HTTP (HttpHeaderFilterStrategy) ne supprime que les en-têtes Camel*, donc un en-tête HTTP entrant portant ce nom passe directement dans l'Exchange et remplace ce sur quoi la route agit. Un client non authentifié injecte IssueKey: PROD-999 et le compte de service de la route supprime un ticket arbitraire (CWE-639).
Chaque sous-répertoire est un projet autonome avec son propre Dockerfile, docker-compose.yml et README. En résumé, pour l'un ou l'autre :
cd camel-spring-boot # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
| Propriété | Valeur |
|---|---|
| Composant | camel-jira |
| CWE | CWE-20 (Validation incorrecte des entrées) / CWE-639 (Contournement d'autorisation via une clé contrôlée par l'utilisateur) |
| Impact | Effectuer des opérations JIRA arbitraires (suppression/transition/création/modification) avec les identifiants du compte de service du point de terminaison |
| Versions affectées | De 4.0.0 avant 4.14.8, de 4.15.0 avant 4.18.3, de 4.19.0 avant 4.21.0 |
| Versions corrigées | 4.14.8, 4.18.3, 4.21.0 |
| JIRA | CAMEL-23576 (PR apache/camel#23417) |
| Crédit | Yu Bao (PayPal) |
Le correctif renomme les constantes d'en-tête selon la convention CamelJira* (par exemple CamelJiraIssueKey), afin qu'elles soient éliminées à la frontière HTTP comme tous les autres en-têtes Camel*.
Avis de sécurité : https://camel.apache.org/security/CVE-2026-48206.html
Ces reproducteurs sont fournis uniquement pour la recherche en sécurité et les tests autorisés, pour une vulnérabilité divulguée publiquement et corrigée. Ne les utilisez pas contre des systèmes sans autorisation explicite.