Elliptic Curve Key Disclosure Affecting org.bitbucket.b_c:jose4j package, versions [0.3.6,0.5.5)


0.0
high

Snyk CVSS

    Attack Complexity High
    Scope Changed
    Confidentiality High
    Integrity High

    Threat Intelligence

    Exploit Maturity Proof of concept

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 SNYK-JAVA-ORGBITBUCKETBC-30206
  • published 14 Mar 2017
  • disclosed 13 Mar 2017
  • credit Antonio Sanso, Quan Nguyan

Introduced: 13 Mar 2017

CVE NOT AVAILABLE CWE-200 Open this link in a new tab

How to fix?

Upgrade org.bitbucket.b_c:jose4j to version 0.5.5 or higher.

Overview

org.bitbucket.b_c:jose4j is a robust and easy to use open source implementation of JSON Web Token (JWT) and the JOSE specification suite (JWS, JWE, and JWK). It is written in Java and relies solely on the JCA APIs for cryptography. Please see https://bitbucket.org/b_c/jose4j/wiki/Home for more info, examples, etc...

Affected versions of this 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 npm:node-jose:20170313 and SNYK-JAVA-COMNIMBUSDS-30205