vendor:
MacOS and iOS
by:
Project Zero
7,8
CVSS
HIGH
Use-After-Free
416
CWE
Product Name: MacOS and iOS
Affected Version From: iOS 11.0.3 (11A432)
Affected Version To: MacOS 10.13 (17A365)
Patch Exists: YES
Related CWE: CVE-2016-7612, CVE-2016-7633
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: iOS, MacOS
2016
MIG Lifetime Management Paradigms
The IOSurfaceRootUserClient external method 17 (s_set_surface_notify) will drop a reference on the wake_port (via IOUserClient::releaseAsyncReference64) then return an error code if the client has previously registered a port with the same callback function. The external method's error return value propagates via the return value of is_io_connect_async_method back to the MIG generated code which will drop a futher reference on the wake_port when only one was taken.
Mitigation:
Update to the latest version of iOS and MacOS