FICHE CVE

CVE-2026-102946

Publiée le 2026-10-15 · Dernière modification le 2026-10-15

🇫🇷 EN BREF

joserfc est une bibliothèque Python utilisée pour gérer les normes JOSE (JSON Object Signing and Encryption). Dans les versions antérieures à la 1.7.4, une faille existe dans la manière dont la bibliothèque traite les signatures de type « General JSON Serialization ». Si un utilisateur fournit une charge utile JWS avec un tableau de signatures vide, la boucle de vérification s'achève instantanément sans effectuer de contrôles, marquant ainsi incorrectement la charge utile comme authentique.

Un attaquant peut exploiter cette faille pour contourner l'authentification ou falsifier des données, compromettant ainsi la confidentialité et l'intégrité de l'application. Comme cette vulnérabilité ne nécessite aucun privilège particulier, aucune interaction de l'utilisateur ni aucune clé secrète, elle peut être déclenchée à distance via un réseau. Cela permet à une partie non autorisée de fournir des données arbitraires que le serveur considère comme fiables et vérifiées.

DÉTAIL DU VECTEUR CVSS

Vecteur d'attaqueRéseau
Complexité d'attaqueFaible
Privilèges requisAucun
Interaction utilisateurAucune
PortéeInchangée
Impact sur la confidentialitéÉlevé
Impact sur l'intégritéÉlevé
Impact sur la disponibilitéAucun

RÉFÉRENCES

Description officielle du NVD (en anglais)

joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. Prior to 1.7.4, joserfc.jws.deserialize_json() accepts a JWS General JSON Serialization with an empty signatures array as authenticated. The verify_general_json() loop performs no iterations for the empty array and returns success because no signature check failed, allowing an attacker without a signing key to supply an arbitrary payload that relying applications may treat as authentic. The issue affects the General JSON Serialization path; compact JWS and JWT decoding, Flattened JSON serialization, and JWE JSON processing do not follow this vulnerable path. This issue is fixed in version 1.7.4.