FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

cURL -- Escape and unescape integer overflows

Affected packages
7.11.1 <= curl < 7.50.3

Details

VuXML ID b018121b-7a4b-11e6-bf52-b499baebfeaf
Discovery 2016-09-14
Entry 2016-09-14

The cURL project reports

The four libcurl functions curl_escape(), curl_easy_escape(), curl_unescape and curl_easy_unescape perform string URL percent escaping and unescaping. They accept custom string length inputs in signed integer arguments.

The provided string length arguments were not properly checked and due to arithmetic in the functions, passing in the length 0xffffffff (2^32-1 or UINT_MAX or even just -1) would end up causing an allocation of zero bytes of heap memory that curl would attempt to write gigabytes of data into.

References

CVE Name CVE-2016-7167
URL https://curl.haxx.se/docs/adv_20160914.html