CVE-2022-23540
jsonwebtoken vulnerable to signature validation bypass due to insecure default algorithm in jwt.verify()
Record summary
CVE-2022-23540 has a selected CVSS score of 6.4 (medium).
Description
In versions `<=8.5.1` of `jsonwebtoken` library, lack of algorithm definition in the `jwt.verify()` function can lead to signature validation bypass due to defaulting to the `none` algorithm for signature verification. Users are affected if you do not specify algorithms in the `jwt.verify()` function. This issue has been fixed, please update to version 9.0.0 which removes the default support for the none algorithm in the `jwt.verify()` method. There will be no impact, if you update to version 9.0.0 and you don’t need to allow for the `none` algorithm. If you need 'none' algorithm, you have to explicitly specify that in `jwt.verify()` options.
Exploitation context
CISA SSVC decision
CISA Coordinator · SSVC 2.0.3 · Evaluated Jul 16, 2024 · Source: CVE List
Affected products and versions
2| Product | Source | Version range | Status |
|---|---|---|---|
node-jsonwebtokenBrowse auth0 / node-jsonwebtoken | CVE List | <= 8.5.1 | affected |
jsonwebtokenBrowse npm / jsonwebtoken | GitHub Advisory | Before 9.0.0 · Fixed in 9.0.0 | affected |