CVE-2018-7159

Modified
Published: 17 May 2018, 14:00
Last modified:17 Sept 2024, 01:06

Vulnerability Summary

Overall Risk (default)
low
21/100
CVSS Score
5.3 MEDIUM
v3.1 (nvd)
EPSS Score
0.9% LOW
1% probability +0.04%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

17 May 2018, 14:00
Published
Vulnerability first disclosed
17 Sept 2024, 01:06
Last Modified
Vulnerability information updated

Description

The HTTP parser in all current versions of Node.js ignores spaces in the `Content-Length` header, allowing input such as `Content-Length: 1 2` to be interpreted as having a value of `12`. The HTTP specification does not allow for spaces in the `Content-Length` value and the Node.js HTTP parser has been brought into line on this particular difference. The security risk of this flaw to Node.js users is considered to be VERY LOW as it is difficult, and may be impossible, to craft an attack that makes use of this flaw in a way that could not already be achieved by supplying an incorrect value for `Content-Length`. Vulnerabilities may exist in user-code that make incorrect assumptions about the potential accuracy of this value compared to the actual length of the data supplied. Node.js users crafting lower-level HTTP utilities are advised to re-check the length of any input supplied after parsing is complete.

CVSS Metrics

  • v3.1MEDIUMScore: 5.3CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
  • v2.0MEDIUMScore: 5AV:N/AC:L/Au:N/C:N/I:P/A:N

EPSS Trends

Current EPSS score: 0.90% Percentile: 76%

Techniques & Countermeasures

  • CWE-20Improper Input Validation

    The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.

  • CWE-115Misinterpretation of Input

    The product misinterprets an input, whether from an attacker or another product, in a security-relevant fashion.

Affected Systems

  • nodejsnode.js

    ≥ 4.0.0, ≤ 4.1.2 | ≥ 4.2.0, < 4.9.0 | ≥ 6.0.0, ≤ 6.8.1 | ≥ 6.9.0, < 6.14.0 | ≥ 8.0.0, ≤ 8.8.1 | ≥ 8.9.0, < 8.11.0 | ≥ 9.0.0, < 9.10.0

  • the node.js projectnode.js

    ≥ 4.0, < 5.0 | ≥ 6.0, < 7.0 | ≥ 8.0, < 9.0 | ≥ 9.0, < 10.0

References (3)