Skip to content
Fencer Intel
critical 9.8

CVE-2015-9235 json

Verification Bypass in jsonwebtoken

published 2018-05-29 8 y ago modified 2026-09-10 1 mo ago also GHSA-c7hr-j4mj-j2w6 , EUVD-2018-0569

cvss
9.8
version 3.0, NVD
cisa kev
Not listed
not in CISA's catalog
epss
8.4%
EPSS 8.4% chance of exploitation in 30 days, percentile 95%
public exploits
0
none known

Summary

In jsonwebtoken node module before 4.2.2 it is possible for an attacker to bypass verification when a token digitally signed with an asymmetric key (RS/ES family) of algorithms but instead the attacker send a token digitally signed with a symmetric algorithm (HS* family).

Patch / fix

  • npm jsonwebtoken 4.2.2
  • auth0 jsonwebtoken 4.2.2

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2015-9235 updated cvss 7.3

nodejs-jsonwebtoken: verification step bypass with an altered token

  • Red Hat Mobile Application Platform 4 nodejs-jsonwebtoken
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

8.37% chance of exploitation in the next 30 days, higher than 95% of all scored CVEs (FIRST EPSS, 2026-11-09).

Exploits and checks

  • timmclean.net https://www.timmclean.net/2015/02/25/jwt-alg-none.html referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
NVD 3.0 9.8 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P

Affected packages

ecosystem package affected fixed in
npm jsonwebtoken
<4.2.2
4.2.2

Affected products

  • HackerOne jsonwebtoken node module

Classification

Weakness
  • CWE-20 Improper Input Validation
  • CWE-327 Use of a Broken or Risky Cryptographic Algorithm

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.