Impact
A tampered Disclosure whose digest no longer matches the issuer‑signed "_sd" array is silently dropped during verification, yet the issuer signature remains valid. The library still reports success and returns a reduced claim set. This behavior violates the SD‑JWT RFC requirements for rejecting unreferenced or invalid Disclosures and allows an attacker to modify or remove claims without detection. The result can be the loss of critical authorization information or the exposure of sensitive data that was previously hidden.
Affected Systems
The vulnerability affects the Openwallet Foundation’s JavaScript libraries @sd-jwt/decode and @sd-jwt/core up to and including version 0.19.0. Any installation of these packages that has not been upgraded to version 0.20.0 or later is potentially exposed.
Risk and Exploitability
The CVSS score of 7.1 indicates a moderate to high severity. The EPSS score is not available, but the issue is listed as not in the CISA KEV catalog, suggesting no publicly known widespread exploitation yet. A malicious holder can exploit the silent drop through the SDJwtInstance.verify() flow, while an on‑path attacker can tamper with a Disclosure when the relying party does not enforce key binding. If a relying party defaults to granting access when a claim is missing, the silent claim reduction can alter authorization decisions without generating an error.
OpenCVE Enrichment