ASA-201811-8 generated external raw

[ASA-201811-8] lib32-libcurl-compat: arbitrary code execution
Arch Linux Security Advisory ASA-201811-8 ========================================= Severity: High Date : 2018-11-06 CVE-ID : CVE-2018-16839 CVE-2018-16840 Package : lib32-libcurl-compat Type : arbitrary code execution Remote : Yes Link : Summary ======= The package lib32-libcurl-compat before version 7.62.0-1 is vulnerable to arbitrary code execution. Resolution ========== Upgrade to 7.62.0-1. # pacman -Syu "lib32-libcurl-compat>=7.62.0-1" The problems have been fixed upstream in version 7.62.0. Workaround ========== None. Description =========== - CVE-2018-16839 (arbitrary code execution) The internal function Curl_auth_create_plain_message fails to correctly verify that the passed in lengths for name and password aren't too long, then calculates a buffer size to allocate. On systems with a 32 bit size_t, the math to calculate the buffer size triggers an integer overflow when the user name 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. - CVE-2018-16840 (arbitrary code execution) 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. Impact ====== A malicious remote server might be able to execute arbitrary commands by closing the connection from a client using easy handlers. A malicious user could execute arbitrary code by passing a very long username or password used for SASL authentication. References ==========