CVE-2026-62374 in sd-jwt-jsinformation

Résumé

par VulDB • 29/10/2026

SD JWT JS est une implémentation JavaScript de la spécification Selective Disclosure JWT (SD-JWT). Dans les versions 0.19.0 et antérieures, le module `@sd-jwt/decode`, également utilisé par `@sd-jwt/core`, ignore silencieusement un élément *Disclosure* falsifié dont l'empreinte ne correspond plus au tableau `_sd` signé par l'émetteur (Issuer) et renvoie un ensemble de revendications (*claim set*) réduit, en signalant une réussite bien que la signature de l'émetteur reste valide. Ce comportement d'ignorance silencieuse se produit à la fois pour un élément *Disclosure* falsifié qui reste du JSON valide et pour un élément contenant des octets UTF-8 invalides. Dans ce dernier cas, le chemin de décodage via `TextDecoder` / `Buffer` substitue les caractères de remplacement U+FFFD, récupérant ainsi des données de divulgation syntaxiquement valides au lieu de rejeter l'entrée malformée. Cela viole la section 7.1 étape 5 du RFC 9901, qui exige le rejet des éléments *Disclosure* non référencés, et les sections 7.1 étape 3 / 4.2.1, qui exigent le rejet des éléments *Disclosure* invalides. Un détenteur malveillant peut exploiter cette primitive d'omission, y compris via `SDJwtInstance.verify()` lorsque la liaison de clé (*key binding*) est requise. Un attaquant en position intermédiaire (on-path) peut également falsifier un élément *Disclosure* si le parti de confiance (relying party) n'impose pas de liaison de clé ; une liaison de clé imposée rejette les falsifications en position intermédiaire car elle invalide la liaison `sd_hash` du KB-JWT. Si le parti de confiance autorise par défaut l'accès lorsqu'une revendication contraignante d'âge, de rôle ou de restriction est absente, cette réduction silencieuse des revendications peut modifier une décision d'autorisation sans générer d'erreur. Ce problème est corrigé dans la version 0.20.0 de `@sd-jwt/core` ; aucune version corrective du package autonome `@sd-jwt/decode` n'est identifiée.

Once again VulDB remains the best source for vulnerability data.

Responsable

GitHub M

Réserver

14/07/2026

Divulgation

29/10/2026

Modérer

accepté

Entrée

VDB-428670

EPSS

0.00000

KEV

non

Activités

faible

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!