negotiator is an HTTP content negotiator for Node.js and is used by many modules and frameworks including Express and Koa. The header for "Accept-Language", when parsed by negotiator 0.6.0 and earlier is vulnerable to Regular Expression Denial of Service via a specially crafted string.
CVE-2016-10539 - High Severity Vulnerability
Vulnerable Library - negotiator-0.5.3.tgz
HTTP content negotiation
Library home page: https://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz
Path to dependency file: /package.json
Path to vulnerable library: /node_modules/negotiator/package.json
Dependency Hierarchy: - express-4.13.3.tgz (Root Library) - accepts-1.2.13.tgz - :x: **negotiator-0.5.3.tgz** (Vulnerable Library)
Found in HEAD commit: 289c77565fc637d4c0e4bf4a9a1e81df96cd190a
Found in base branch: master
Vulnerability Details
negotiator is an HTTP content negotiator for Node.js and is used by many modules and frameworks including Express and Koa. The header for "Accept-Language", when parsed by negotiator 0.6.0 and earlier is vulnerable to Regular Expression Denial of Service via a specially crafted string.
Publish Date: 2018-05-31
URL: CVE-2016-10539
CVSS 3 Score Details (7.5)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: None - User Interaction: None - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: None - Availability Impact: High
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://www.npmjs.com/advisories/106
Release Date: 2018-04-26
Fix Resolution (negotiator): 0.6.1
Direct dependency fix Resolution (express): 4.14.0
Step up your Open Source Security Game with Mend here