pac4j-jwt - CVE-2026-29000

Date de publication :

Il s’agit d’une vulnérabilité dans JwtAuthenticator du module pac4j-jwt lors du traitement de JWT chiffrés (JWE)

pac4j-jwt est un module Java de la suite pac4j, utilisé pour l’authentification d’applications via JSON Web Tokens (JWT).

Un token peut contenir un PlainJWT non signé encapsulé dans le JWE, ce qui provoque l’absence de vérification de signature lors de la validation du token. Un attaquant connaissant la clé publique RSA du serveur peut alors forger un token avec des claims arbitraires (utilisateur, rôles) et le faire accepter comme valide. 

Elle permet à un attaquant distant de contourner l’authentification et d’usurper n’importe quel utilisateur, y compris un administrateur.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Non

Risques

Contournement de la politique de sécurité

Exploitation

La vulnérabilité exploitée est du type
CWE-347 : Improper Verification of Cryptographic Signature

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
Une preuve de concept est disponible en sources ouvertes.

Systèmes ou composants affectés

•   pac4j-jwt versions antérieures à 4.5.9 (branche 4.x)
•   pac4j-jwt versions antérieures à 5.7.9 (branche 5.x)
•   pac4j-jwt versions antérieures à 6.3.3 (branche 6.x)

Solutions ou recommandations

•   pac4j-jwt versions 4.5.9 et supérieures
•   pac4j-jwt versions 5.7.9 et supérieures
•   pac4j-jwt versions 6.3.3 et supérieures