Apache Camel Keycloak - CVE-2026-53913

Date de publication :

Il s'agit d'une vulnérabilité dans la politique de sécurité KeycloakSecurityPolicy du composant camel-keycloak.

Apache Camel est un framework d'intégration open source qui fournit des composants permettant de construire des routes de médiation et de transformation de messages entre systèmes hétérogènes. Le composant camel-keycloak fournit une politique de sécurité destinée à protéger ces routes au moyen de jetons d'accès émis par Keycloak.

La vérification cryptographique du jeton n'est exécutée que si des rôles ou permissions requis sont configurés. Dans la configuration par défaut, ces listes sont vides et le jeton n'est jamais vérifié. Toute valeur non nulle dans l'en-tête Authorization: Bearer est alors acceptée sans contrôle de signature, d'émetteur ni d'expiration.

Elle permet à un attaquant non authentifié d'accéder à la route protégée et, si celle-ci transmet les données à un producteur capable d'exécuter du code, d'obtenir une exécution de code à distance.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Oui

Risques

Contournement de la politique de sécurité

Exploitation

La vulnérabilité exploitée est du type
CWE-287 : Improper Authentication

Détails sur l'exploitation
•   Vecteur d'attaque : Réseau
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Aucun
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : Oui

Preuve de concept
Actuellement, aucune preuve de concept n'est disponible en sources ouvertes.

Systèmes ou composants affectés

•   Apache Camel versions 4.15.0 jusqu'à 4.18.2
•   Apache Camel versions 4.19.0 jusqu'à 4.20.0

Contournement provisoire

•   Configurer une valeur non vide pour requiredRoles ou requiredPermissions sur chaque KeycloakSecurityPolicy afin que le chemin de vérification du jeton soit effectivement exécuté
•   Positionner allowTokenFromHeader à false lorsque le jeton n'est pas censé provenir de l'en-tête de la requête
•   Effectuer la vérification du jeton au niveau de la couche applicative en amont de la politique

Solutions ou recommandations

•   Apache Camel : versions 4.18.3 et supérieures pour la branche 4.18.x
•   Apache Camel : versions 4.21.0 et supérieures pour la branche 4.19.x/4.20.x