CVE-2016-8622

curl: URL unescape heap overflow via integer truncation

Published Jul 31, 2018 CVSS 3.0 · 3.7 Low EPSS 4.7% KEV · Not listed
Description
The URL percent-encoding decode function in libcurl before 7.51.0 is called `curl_easy_unescape`. Internally, even if this function would be made to allocate a unscape destination buffer larger than 2GB, it would return that new length in a signed 32 bit integer variable, thus the length would get either just truncated or both truncated and turned negative. That could then lead to libcurl writing outside of its heap based buffer.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-711-1 curl security update
Debian DSA Debian DSA DSA-3705-1 curl security update
EUVD EUVD EUVD-2016-9467 The URL percent-encoding decode function in libcurl before 7.51.0 is called `curl_easy_unescape`. Internally, even if this function would be made to allocate a unscape destination buffer larger than 2GB, it would return that new length in a signed 32 bit integer variable, thus the length would get either just truncated or both truncated and turned negative. That could then lead to libcurl writing outside of its heap based buffer.
Ubuntu USN Ubuntu USN USN-3123-1 curl vulnerabilities
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
redhat
Published
Updated
Apr 15, 2026, 8:54 PM
Reserved
Oct 12, 2016, 12:00 AM
Status
Modified
Published
Jul 31, 2018, 9:29 PM
Modified
Jun 17, 2026, 12:54 AM
Severity
Low
Public date
Nov 2, 2016, 12:00 AM