Elliptic Curve Key Disclosure Affecting node-jose package, versions <0.9.3



    Attack Complexity High
    Scope Changed
    Confidentiality High
    Integrity High

    Threat Intelligence

    EPSS 0.22% (61st percentile)
Expand this section
5.9 medium

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:node-jose:20170313
  • published 14 Mar 2017
  • disclosed 13 Mar 2017
  • credit Antonio Sanso, Quan Nguyan

How to fix?

Upgrade node-jose to version 0.9.3 or higher.


node-jose is A JavaScript implementation of the JSON Object Signing and Encryption (JOSE) for current web browsers and node.js-based servers.

Affected versions of the package are vulnerable to Elliptic Curve Key Disclosure.

A JSON Web Token (JWT) defines a container that transports data between two parties. When a JWT is signed with a private key by one of the parties, it's known as a JSON Web Signature (JWS).

The "JWK" (JSON Web Key) is a JSON based open standard used for creating access tokens. JWK's Header Parameter allows it to include the public key that corresponds to the key used to sign the JWS. If the Header Parameter includes this public key, an attacker could then use it to generate a private key / public key pair, send the public key together with the signature and the signature will be valid.

This vulnerability is related to SNYK-JAVA-ORGBITBUCKETBC-30206 and SNYK-JAVA-COMNIMBUSDS-30205