jws before 3.0.0 allows users to select what algorithm the server will use to verify a provided JWT. A malicious actor can use this behaviour to arbitrarily modify the contents of a JWT while still passing verification. For the common use case of the JWT as a bearer token, the end result is a complete authentication bypass with minimal effort.
CVE-2016-1000223 - Medium Severity Vulnerability
Vulnerable Library - jws-0.2.6.tgz
Implementation of JSON Web Signatures
Library home page: https://registry.npmjs.org/jws/-/jws-0.2.6.tgz
Path to dependency file: /package.json
Path to vulnerable library: /node_modules/jws/package.json
Dependency Hierarchy: - jsonwebtoken-0.4.0.tgz (Root Library) - :x: **jws-0.2.6.tgz** (Vulnerable Library)
Found in base branch: master
Vulnerability Details
jws before 3.0.0 allows users to select what algorithm the server will use to verify a provided JWT. A malicious actor can use this behaviour to arbitrarily modify the contents of a JWT while still passing verification. For the common use case of the JWT as a bearer token, the end result is a complete authentication bypass with minimal effort.
Publish Date: 2024-11-03
URL: CVE-2016-1000223
CVSS 3 Score Details (4.6)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: High - Privileges Required: Low - User Interaction: Required - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: Low - Integrity Impact: Low - Availability Impact: Low
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://www.npmjs.com/advisories/88
Release Date: 2020-07-21
Fix Resolution (jws): 3.0.0
Direct dependency fix Resolution (jsonwebtoken): 5.0.0