Fortinet Discovers macOS QuartzCore Handling Shape Object Memory Corruption Vulnerability in CA::Render::Decoder::decode_shape
Fortinet's FortiGuard Labs has discovered a Memory Corruption vulnerability in macOS QuartzCore.
QuartzCore, also known as CoreAnimation, is a framework used by macOS and iOS to build an animatable scene graph. QuartzCore uses a unique rendering model where the graphics operations are run in a separate process. On macOS, the process is WindowServer. On iOS, the process is backboard. Both of these process are out of sandbox and have the right to call setuid. The service named com.apple.CARenderServer in QuartzCore is usually referenced as CARenderServer. This service exists in both macOS and iOS and can be accessed from the Safari Sandbox.
There exists a Memory Corruption vulnerability when QuartzCore handles shape object in the function CA::Render::Decoder::decode_shape(). It may lead to unexpected application termination.
SolutionsUsers should apply the solution provided by Apple.
Fortinet reported the vulnerability to Apple on January 3, 2019.
Apple confirmed the vulnerability on March 20, 2019.
Apple patched the vulnerability on March 25, 2019.
This vulnerability was discovered by Kai Lu of Fortinet's FortiGuard Labs.