Use after free in curl
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Partial Red Hat: 1 fixed, 2 without a fix
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and Red Hat. Impact type from CWE-416 and the CVSS impact.
Summary
A heap use-after-free flaw was found in curl versions from 7.59.0 through 7.61.1 in the code related to closing an easy handle. When closing and cleaning up an 'easy' handle in the `Curl_close()` function, the library code first frees a struct (without nulling the pointer) and might then subsequently erroneously write to a struct field within that already freed struct.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| The Curl Project | curl | from 7.59.0 to 7.61.1 | — | No fix listed | CNA |
- curl VendorThe Curl Project Affected from 7.59.0 to 7.61.1 Fixed in — No fix listed CNA
CPE configurations NVD · 5
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:haxx:curl:*:*:*:*:*:*:*:* | 7.59.0 to before 7.62.0 | Vulnerable | Haxx |
| cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:lts:*:*:* | 14.04 | Vulnerable | Canonical |
| cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:* | 16.04 | Vulnerable | Canonical |
| cpe:2.3:o:canonical:ubuntu_linux:18.04:*:*:*:lts:*:*:* | 18.04 | Vulnerable | Canonical |
| cpe:2.3:o:canonical:ubuntu_linux:18.10:*:*:*:*:*:*:* | 18.10 | Vulnerable | Canonical |
- cpe:2.3:a:haxx:curl:*:*:*:*:*:*:*:* Versions 7.59.0 to before 7.62.0 Vulnerable ·Haxx
- cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:lts:*:*:* Versions 14.04 Vulnerable ·Canonical
- cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:* Versions 16.04 Vulnerable ·Canonical
- cpe:2.3:o:canonical:ubuntu_linux:18.04:*:*:*:lts:*:*:* Versions 18.04 Vulnerable ·Canonical
- cpe:2.3:o:canonical:ubuntu_linux:18.10:*:*:*:*:*:*:* Versions 18.10 Vulnerable ·Canonical
Remediation
Red Hat 1 advisory
- RHSA-2019:1543 Released 2019-06-18 · Red Hat rating ImportantRed Hat JBoss Core Services Apache HTTP Server 2.4.29 SP2 security update
- JBoss Core Services Apache HTTP Server 2.4.29 SP2
Vendor assessments
Red Hat
Red Hat rating: Low. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat JBoss Core Services | Affected | No fix yet |
| Red Hat Software Collections | Affected | No fix yet: Fix deferred |
| JBoss Core Services Apache HTTP Server 2.4.29 SP2 | Fixed | RHSA-2019:1543 |
Not affected: 8 products
- .NET Core 1.0 on Red Hat Enterprise Linux
- .NET Core 1.1 on Red Hat Enterprise Linux
- .NET Core 2.1 on Red Hat Enterprise Linux
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat JBoss Web Server 5
Timeline
- 2026-10-02 Threatist record created from CVE-2018-16840
- 2026-10-03 Alias added: GHSA-6vwf-m72q-cw8h
References
More The Curl Project vulnerabilities
- TI-2019-02834 Stack-based buffer overflow in curl CVSS 3.1CRITICAL 9.8
- TI-2016-07082 Buffer overflow in curl CVSS 3.0CRITICAL 9.8
- TI-2018-12049 Heap-based buffer overflow in curl: CVSS 3.0CRITICAL 9.8
- TI-2016-07084 Heap-based buffer overflow in curl CVSS 3.0CRITICAL 9.8
- TI-2016-07081 The function `read_data()` in security.c in curl before version 7.51.0 is vulnerable to memory double free. CVSS 3.0CRITICAL 9.8
- TI-2016-07080 Use after free in curl CVSS 3.0CRITICAL 9.8
Sources
- CVE-2018-16840 · CVE Program
- CVE-2018-16840 · NVD
- FIRST EPSS
- GHSA-6vwf-m72q-cw8h · GitHub Advisory Database · CC BY 4.0
- CVE-2018-16840 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences