vendor:
macOS
by:
siguza
5,5
CVSS
MEDIUM
Use-After-Free
416
CWE
Product Name: macOS
Affected Version From: macOS 10.11.5
Affected Version To: macOS 10.11.6
Patch Exists: YES
Related CWE: CVE-2016-4655
CPE: o:apple:mac_os_x
Other Scripts:
N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References:
N/A
Nuclei Metadata: N/A
Platforms Tested: MacBookAir5,2
2016
IOSurfaceRootUserClient UaF
IOSurfaceRootUserClient stores a task struct pointer (passed in via IOServiceOpen) in the field at +0xf0 without taking a reference. By killing the corrisponding task we can free this pointer leaving the user client with a dangling pointer. We can get this pointer used by calling the create_surface_fast_path external method which will try to read and use the memory map off of the free'd task struct. This bug could be leveraged for kernel memory corruption and is reachable from interesting sandboxes including safari and chrome.
Mitigation:
Apple released a patch for this vulnerability in macOS 10.11.6