Security researchers discovered a double free vulnerability in macOS caused by memory corruption flaw in the AMD component. Successful exploitation of the vulnerability allows an attacker to escalate privilege and to run malicious code as a root user.
The vulnerability can be tracked as CVE-2019-8635, and it covers two flaws “namely in the discard_StretchTex2Tex method and processing of sideband tokens in an AMD Radeon class called AMDRadeonX400_AMDSIGLContext,”
discard_StretchTex2Tex and AMDRadeonX400_AMDSIGLContext are the derived classes of IOAccelGLContext2 which extend to IOAccelContext2 class, and the classes are used to render graphics on macOS machines.
“The vulnerability here occurs in the discard_StretchTex2Tex and AMDSIGLContext::process_StretchTex2Tex functions of the AMDRadeonX4000_AMDSIGLContext class, which can be accessed using the AMDRadeonX4000_AMDSIGLContext userclient with selector 2 function IOAccelContext2::submit_data_buffers, while the AMDRadeonX4000_AMDGraphicsAccelerator client can be opened with connect type 1”.
The flaw is due to lack of validation of the data supplied from the user end, which allows an attacker to take advantage of this to escalate privileges to the kernel level. To execute the vulnerability, the local attacker should have the ability to run a low-privileged code on the target macOS system.
The vulnerability resides in the processing of the sideband tokens that exist in the same AMD class; it allows a local attacker to execute arbitrary code on the affected versions of macOS.
To execute this vulnerability, a local attacker should have privileges to run a low-privileged code on the target system to take advantage of this vulnerability.
Trend Micro reported the flaw to Apple and patch has bee released. With the two flaws, the execution method remains the same but differs in the function taken advantage of. You can find the complete root cause analysis here.
An attacker could utilize the double free vulnerability to compromise the vulnerable machine; users are recommended to upgrade their OS X versions.