CVE-2017-16021

uri-js is a module that tries to fully implement RFC 3986. One of these features is validating whether or not a supplied URL is valid or not. To do this, uri-js uses a regular expression, This regular expression is vulnerable to redos. This causes the program to hang and the CPU to idle at 100% usage while uri-js is trying to validate if the supplied URL is valid or not. To check if you're vulnerable, look for a call to `require("uri-js").parse()` where a user is able to send their own input. This affects uri-js 2.1.1 and earlier.
References
Link Resource
https://github.com/garycourt/uri-js/issues/12 Exploit Issue Tracking Third Party Advisory
https://nodesecurity.io/advisories/100 Broken Link Third Party Advisory
Configurations

Configuration 1 (hide)

cpe:2.3:a:garycourt:uri-js:*:*:*:*:*:node.js:*:*

History

15 Feb 2024, 03:20

Type Values Removed Values Added
CPE cpe:2.3:a:uri-js_project:uri-js:*:*:*:*:*:node.js:*:* cpe:2.3:a:garycourt:uri-js:*:*:*:*:*:node.js:*:*
References () https://nodesecurity.io/advisories/100 - Third Party Advisory () https://nodesecurity.io/advisories/100 - Broken Link, Third Party Advisory
First Time Garycourt uri-js
Garycourt
CWE CWE-1333

Information

Published : 2018-06-04 19:29

Updated : 2024-02-15 03:20


NVD link : CVE-2017-16021

Mitre link : CVE-2017-16021

CVE.ORG link : CVE-2017-16021


JSON object : View

Products Affected

garycourt

  • uri-js
CWE
CWE-1333 CWE-400

Uncontrolled Resource Consumption