CVEvulnerability

CVE-2017-16021

6.5 MEDIUM Published 2018-06-04 Modified 2026-06-17 Official page ↗
Status
Modified
Published
2018-06-04
Last modified
2026-06-17
Assigner
[email protected]
CVSS 3.1 ([email protected])
6.5 MEDIUM — CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0 ([email protected])
6.8 MEDIUM — AV:N/AC:L/Au:S/C:N/I:N/A:C
Weaknesses
CWE-1333, CWE-400

Description

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.

Affected configurations

• garycourt uri-js (<= 2.1.1)

Related

Weakness · CWE (2)

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

Referenced by CWE · observed example (1)

  • CWE-1333 Inefficient Regular Expression Complexity weakness

References