Incorrect Calculation of Buffer Size Affecting curl package, versions <0:7.29.0-51.el7_6.3


Severity

Recommended
low

Based on Red Hat Enterprise Linux security rating.

Threat Intelligence

EPSS
1.16% (86th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-RHEL7-CURL-4935647
  • published26 Jul 2021
  • disclosed5 Sept 2018

Introduced: 5 Sep 2018

CVE-2018-14618  (opens in a new tab)
CWE-131  (opens in a new tab)
CWE-122  (opens in a new tab)

How to fix?

Upgrade RHEL:7 curl to version 0:7.29.0-51.el7_6.3 or higher.
This issue was patched in RHSA-2019:1880.

NVD Description

Note: Versions mentioned in the description apply only to the upstream curl package and not the curl package as distributed by RHEL. See How to fix? for RHEL:7 relevant fixed versions and status.

curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)