CVE Vulnerabilities

CVE-2016-10539

Uncontrolled Resource Consumption

Published: May 31, 2018 | Modified: Jun 17, 2026
CVSS 3.x
7.5
HIGH
Source:
NVD
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.x
5 MEDIUM
AV:N/AC:L/Au:N/C:N/I:N/A:P
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM

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.

Weakness

The product does not properly control the allocation and maintenance of a limited resource.

Affected Software

NameVendorStart VersionEnd Version
NegotiatorNegotiator_project*0.6.0 (including)
Node-negotiatorUbuntuartful*
Node-negotiatorUbuntubionic*
Node-negotiatorUbuntucosmic*
Node-negotiatorUbuntudevel*
Node-negotiatorUbuntudisco*
Node-negotiatorUbuntueoan*
Node-negotiatorUbuntuesm-apps-legacy/xenial*
Node-negotiatorUbuntuesm-apps/bionic*
Node-negotiatorUbuntuesm-apps/focal*
Node-negotiatorUbuntuesm-apps/jammy*
Node-negotiatorUbuntuesm-apps/noble*
Node-negotiatorUbuntuesm-apps/resolute*
Node-negotiatorUbuntuesm-apps/xenial*
Node-negotiatorUbuntufocal*
Node-negotiatorUbuntugroovy*
Node-negotiatorUbuntuhirsute*
Node-negotiatorUbuntuimpish*
Node-negotiatorUbuntujammy*
Node-negotiatorUbuntukinetic*
Node-negotiatorUbuntulunar*
Node-negotiatorUbuntumantic*
Node-negotiatorUbuntunoble*
Node-negotiatorUbuntuoracular*
Node-negotiatorUbuntuplucky*
Node-negotiatorUbuntuquesting*
Node-negotiatorUbunturesolute*
Node-negotiatorUbuntustonking*
Node-negotiatorUbuntutrusty*
Node-negotiatorUbuntuxenial*

Potential Mitigations

  • Mitigation of resource exhaustion attacks requires that the target system either:

  • The first of these solutions is an issue in itself though, since it may allow attackers to prevent the use of the system by a particular valid user. If the attacker impersonates the valid user, they may be able to prevent the user from accessing the server in question.

  • The second solution is simply difficult to effectively institute – and even when properly done, it does not provide a full solution. It simply makes the attack require more resources on the part of the attacker.

References