On Friday, September 27th 2019, a security researcher known as @axi0mX publicly disclosed a vulnerability together with a working exploit called checkm8 (read “checkmate”). This permanent and unpatchable exploit leverages a vulnerability in Apple’s bootrom (read-only code; SecureROM), the initial and critical part in the secure boot chain. Every stage in the boot chain cryptographically verifies the next one, starting with the SecureROM. When the SecureROM is exploited, the secure boot chain is then fully compromised, allowing additional code to load alternative code such as custom kernels or ramdisks.
Checkm8 is an exploit and not a jailbreak. It is in fact possible to leverage Checkm8 to load custom or modified kernels and support additional jailbreak capabilities or sideloaded apps, but so far this has not been publicly achieved. Since the exploit itself doesn’t persist across device reboots, persistence and other critical modifications would require additional vulnerabilities in iOS or its kernel.
Checkm8 does not discriminate on what device type or revision it can exploit (A5 and A11 chipsets). Below are the following iDevices impacted by checkm8:
To leverage the checkm8 exploit the following is required:
A common objective of an attacker is to gain persistence to compromised systems to ensure ongoing control, data exfiltration and monitoring of the user, apps and device usage and associated data (i.e. SMS, instant messaging, files, etc.).
In order for an attacker to gain the necessary persistence while maintaining the secure boot chain intact, additional vulnerabilities would be required, for example, vulnerabilities to circumvent code signing for initial arbitrary code execution on boot.
Another, and the more likely attack surface for an attacker to gain persistence, is to replace legitimate apps (the device would need to be unlocked with the user’s passcode) with modified but legitimately signed apps that would provide a foothold on the device to allow data exfiltration or to perform other malicious actions.
Checkm8 alone is not a persistent exploit. If the device is rebooted, the device will need to be placed into DFU mode, and the checkm8 exploit will need to be executed each and every time to compromise the device.
Checkm8 has the potential to provide a broad canvas for attack, compromise, and ongoing persistence of Apple devices. To evaluate risk posture of a device, it is important to leverage an MTD solution like Zimperium that can detect, respond and remediate threats in the following areas: