CVE-2015-9235 Verification Bypass in jsonwebtoken

Critical 9.8 Published Updated

Attackers can bypass JWT signature verification by switching algorithm types, allowing unauthorized access in applications using the jsonwebtoken library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2015-9235?

CVE-2015-9235 is a critical vulnerability in HackerOne jsonwebtoken node module, published on 29 May 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

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).

Weakness: CWE-327, CWE-20

Which versions are affected by CVE-2015-9235?

2 open source packages ship an affected version, including jsonwebtoken. It affects 1 product.

PackageAffectedFixed in
jsonwebtoken npmAll versions4.2.2
jsonwebtoken npmAll versions4.2.2

Products include Auth0 Jsonwebtoken.

How do I fix CVE-2015-9235?

Upgrade jsonwebtoken to 4.2.2 or later.

Is CVE-2015-9235 being exploited?

There is no known exploitation of CVE-2015-9235 in the wild and no public exploit code.

Public exploit code: 4 proofs of concept on GitHub.

Sources

Also known as CLSA-2026-1774657373, GHSA-c7hr-j4mj-j2w6, ROOT-APP-NPM-CVE-2015-9235.

Is CVE-2015-9235 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free