The OpenBSD qsort() function is recursive, and not randomized, an attacker can construct a pathological input array of N elements that causes qsort() to deterministically recurse N/4 times. This allows attackers to consume arbitrary amounts of stack memory and manipulate stack memory to assist in arbitrary code execution attacks. This affects OpenBSD 6.1 and possibly earlier versions.
The product does not properly control the allocation and maintenance of a limited resource.
Link | Tags |
---|---|
https://www.exploit-db.com/exploits/42271/ | exploit |
https://support.apple.com/HT208144 | |
https://www.qualys.com/2017/06/19/stack-clash/stack-clash.txt | third party advisory |
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdlib/qsort.c?rev=1.15&content-type=text/x-cvsweb-markup | mitigation third party advisory |
http://www.securityfocus.com/bid/99177 | third party advisory vdb entry |
http://www.securitytracker.com/id/1039427 | vdb entry |
https://support.apple.com/HT208113 | |
https://support.apple.com/HT208112 | |
https://support.apple.com/HT208115 |