Authentication Bypass Affecting jsonwebtoken package, versions <4.2.2



    Attack Complexity Low
    Confidentiality High

    Threat Intelligence

    Exploit Maturity Proof of concept
    EPSS 0.66% (78th percentile)
Expand this section
9.8 critical

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk ID npm:jsonwebtoken:20150331
  • published 31 Mar 2015
  • disclosed 31 Mar 2015
  • credit Tim McLean

How to fix?

Upgrade jsonwebtoken to version 4.2.2 or greater.


jsonwebtoken is a JSON Web token implementation for symmetric and asymmetric keys. Affected versions of this package are vulnerable to an Authentication Bypass attack, due to the "algorithm" not being enforced. Attackers are given the opportunity to choose the algorithm sent to the server and generate signatures with arbitrary contents. The server expects an asymmetric key (RSA) but is sent a symmetric key (HMAC-SHA) with RSA's public key, so instead of going through a key validation process, the server will think the public key is actually an HMAC private key.