{"schemaVersion":3,"id":"CVE-2016-8622","aliases":["ALPINE-CVE-2016-8622","UBUNTU-CVE-2016-8622","DEBIAN-CVE-2016-8622"],"status":"published","duplicateOf":null,"title":null,"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.","dates":{"published":"2018-07-31T21:00:00.000Z","modified":"2026-04-15T20:54:57.538Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":9.8,"severity":"critical","version":"3.0","versionLabel":"v3.0","source":"NVD","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.0","versionLabel":"v3.0","source":"CVE.org","score":3.7,"severity":"low","vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","exploitability":null,"impact":null,"computed":false},{"version":"3.0","versionLabel":"v3.0","source":"NVD","score":9.8,"severity":"critical","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false},{"version":"2.0","versionLabel":"v2.0","source":"NVD","score":7.5,"severity":"high","vector":"AV:N/AC:L/Au:N/C:P/I:P/A:P","exploitability":null,"impact":null,"computed":false},{"version":"3.0","versionLabel":"v3.0","source":"OSV · Alpine","score":9.8,"severity":"critical","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","exploitability":10,"impact":9.8,"computed":true},{"version":"3.0","versionLabel":"v3.0","source":"OSV · Ubuntu","score":3.7,"severity":"low","vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","exploitability":5.6,"impact":2.3,"computed":true},{"version":"3.0","versionLabel":"v3.0","source":"OSV · Debian","score":9.8,"severity":"critical","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","exploitability":10,"impact":9.8,"computed":true}]},"epss":{"probability":0.0467,"percentile":0.91652,"severity":"low","asOf":"2026-10-18T00:00:00.000Z","change":{"pp":0,"baselineDate":"2026-09-18T00:00:00.000Z","baselineScore":0.0467},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.04176,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.0467,"percentile":0.91652}],"last30":[{"date":"2026-09-18T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.04176,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.0467,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.0467,"percentile":0.91652}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-122","name":"Heap-based Buffer Overflow","description":"A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().","type":"weakness","status":"Draft","abstraction":"Variant","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/122.html"},{"id":"CWE-190","name":"Integer Overflow or Wraparound","description":"The product performs a calculation that can\n         produce an integer overflow or wraparound when the logic\n         assumes that the resulting value will always be larger than\n         the original value. This occurs when an integer value is\n         incremented to a value that is too large to store in the\n         associated representation. When this occurs, the value may\n         become a very small or negative number.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"Medium","url":"https://cwe.mitre.org/data/definitions/190.html"},{"id":"CWE-787","name":"Out-of-bounds Write","description":"The product writes data past the end, or before the beginning, of the intended buffer.","type":"weakness","status":"Draft","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/787.html"}],"affected":[{"vendor":"alpine","product":"curl","name":"curl","label":"curl","ecosystem":"Alpine Linux","cpePart":null,"purl":"pkg:apk/alpine/curl","purlType":"apk","versions":[{"text":"< 7.51.0-r0","noFixRecorded":false,"fixedIn":null},{"text":"< 7.51.0","noFixRecorded":false,"fixedIn":null},{"text":"< 7.49.1-r4","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.51.0-r0 | < 7.51.0 | < 7.49.1-r4","eol":null,"hubHref":null},{"vendor":"debian","product":"curl","name":"curl","label":"curl","ecosystem":"Debian","cpePart":null,"purl":"pkg:deb/debian/curl","purlType":"deb","versions":[{"text":"< 7.51.0-1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.51.0-1","eol":null,"hubHref":null},{"vendor":"ubuntu","product":"curl","name":"curl","label":"curl","ecosystem":"Ubuntu","cpePart":null,"purl":"pkg:deb/ubuntu/curl","purlType":"deb","versions":[{"text":"< 7.35.0-1ubuntu2.10","noFixRecorded":false,"fixedIn":null},{"text":"< 7.47.0-1ubuntu2.2","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.35.0-1ubuntu2.10 | < 7.47.0-1ubuntu2.2","eol":null,"hubHref":null},{"vendor":"haxx","product":"libcurl","name":"libcurl","label":"libcurl","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 7.51.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.51.0","eol":null,"hubHref":"/vendor/haxx/libcurl"},{"vendor":"the curl project","product":"curl","name":"curl","label":"curl","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"7.51.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"7.51.0","eol":null,"hubHref":"/vendor/the_curl_project/curl"}],"affectedCount":5,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://access.redhat.com/errata/RHSA-2018:3558","label":"access.redhat.com/errata/RHSA-2018:3558","hostname":"access.redhat.com","tags":["Vendor Advisory","X Refsource REDHAT"]},{"url":"https://curl.haxx.se/docs/adv_20161102H.html","label":"curl.haxx.se/docs/adv_20161102H.html","hostname":"curl.haxx.se","tags":["X Refsource CONFIRM","Patch","Vendor Advisory","REPORT"]},{"url":"https://www.tenable.com/security/tns-2016-21","label":"www.tenable.com/security/tns-2016-21","hostname":"www.tenable.com","tags":["X Refsource CONFIRM","Third Party Advisory"]},{"url":"http://www.securitytracker.com/id/1037192","label":"www.securitytracker.com/id/1037192","hostname":"www.securitytracker.com","tags":["VDB Entry","X Refsource SECTRACK","Third Party Advisory"]},{"url":"http://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html","label":"www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html","hostname":"www.oracle.com","tags":["X Refsource CONFIRM"]},{"url":"http://www.securityfocus.com/bid/94105","label":"www.securityfocus.com/bid/94105","hostname":"www.securityfocus.com","tags":["VDB Entry","X Refsource BID","Third Party Advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2018:2486","label":"access.redhat.com/errata/RHSA-2018:2486","hostname":"access.redhat.com","tags":["Vendor Advisory","X Refsource REDHAT","Third Party Advisory"]},{"url":"https://security.gentoo.org/glsa/201701-47","label":"security.gentoo.org/glsa/201701-47","hostname":"security.gentoo.org","tags":["Vendor Advisory","X Refsource GENTOO","Third Party Advisory"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-8622","label":"bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-8622","hostname":"bugzilla.redhat.com","tags":["X Refsource CONFIRM","Issue Tracking","Patch","Third Party Advisory"]},{"url":"https://security.alpinelinux.org/vuln/CVE-2016-8622","label":"security.alpinelinux.org/vuln/CVE-2016-8622","hostname":"security.alpinelinux.org","tags":["Advisory"]},{"url":"https://ubuntu.com/security/CVE-2016-8622","label":"ubuntu.com/security/CVE-2016-8622","hostname":"ubuntu.com","tags":["REPORT"]},{"url":"https://ubuntu.com/security/notices/USN-3123-1","label":"ubuntu.com/security/notices/USN-3123-1","hostname":"ubuntu.com","tags":["Advisory"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-8622","label":"www.cve.org/CVERecord?id=CVE-2016-8622","hostname":"www.cve.org","tags":["REPORT"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2016-8622","label":"security-tracker.debian.org/tracker/CVE-2016-8622","hostname":"security-tracker.debian.org","tags":["Advisory"]}],"lineage":{"upstream":[],"downstream":["DLA-711-1","DSA-3705-1","MGASA-2018-0053","OPENSUSE-SU-2024:10303-1","RHSA-2018:3558","SUSE-SU-2016:2699-1","SUSE-SU-2016:2700-1","SUSE-SU-2016:2714-1","USN-3123-1"],"duplicates":[],"related":["OPENSUSE-SU-2024:10303-1","SUSE-SU-2016:2699-1","SUSE-SU-2016:2700-1","SUSE-SU-2016:2714-1","USN-3123-1"]},"timeline":[{"kind":"published","date":"2018-07-31T21:00:00.000Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-04-15T20:54:57.538Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":70,"level":"high","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-19T09:58:20.295Z","stale":false,"partial":false}}