Advisory: CVE-2023-38606 By Boris Larin & Igor Kuznetsov (Kaspersky GReAT)
⚡ Verified PoC Code

Operation Triangulation: Apple iOS Kernel Zero-Day & Hardware MMIO Backdoor

Threat Overview

CVE-2023-38606 is a zero-click kernel privilege escalation zero-day vulnerability utilized in the sophisticated espionage campaign known as Operation Triangulation. The vulnerability affected Apple iOS versions up to 16.5.1 and macOS versions up to 13.4.1 across A12–A16 Bionic and M1–M2 chipsets.

The exploit chain operated entirely without user interaction via Apple iMessage, stringing together four zero-day vulnerabilities to achieve full persistent surveillance.

The Hardware MMIO Backdoor

Apple devices feature advanced hardware security mechanisms, most notably Page Protection Layer (PPL), which utilizes ARM memory tagging and dedicated hardware registers to prevent even the kernel itself from modifying executable page tables without cryptographic authorization.

The attackers discovered undocumented Memory-Mapped I/O (MMIO) hardware registers within Apple's custom memory management controller (likely remnants of internal hardware debugging, factory test jigs, or coprocessor interfaces).

Memory Controller Manipulation

By writing specific physical addresses to registers mapped around 0x2000000000x210000000, the exploit instructed the memory controller to write data directly into physical RAM:

+--------------------------------------------------------------+

| ARM CPU (Kernel / PPL) |

| Page Protection Layer enforces read-only executable pages |

+--------------------------------------------------------------+

|

[Bypassed via MMIO]

v

+--------------------------------------------------------------+

| Undocumented GPU / Fabric MMIO Registers |

| Direct hardware access to physical memory bus registers |

+--------------------------------------------------------------+

|

v

+--------------------------------------------------------------+

| Physical RAM (DRAM) |

| Modifies Page Table Entries (PTE) directly in silicon |

+--------------------------------------------------------------+

Because these hardware registers were not blocked by PPL or the Secure Enclave, writing to them completely bypassed hardware-enforced page protections. The attackers could modify kernel page tables directly in physical memory, granting arbitrary kernel read/write capabilities.

The 4-Zero-Day Attack Chain

1
CVE-2023-41990: Processing of a malicious TrueType font inside an invisible iMessage attachment allowed initial code execution within the unprivileged imagetranscoderservice.
2
CVE-2023-32434: Memory corruption within the kernel's memory management subsystems used to obtain preliminary kernel read/write.
3
CVE-2023-38606: Hardware MMIO register manipulation used to defeat Apple's PPL hardware enforcement.
4
CVE-2023-32435: WebKit vulnerability used to inject monitoring spyware implants that recorded microphone audio, GPS locations, and encrypted communications.

Remediation & Apple Response

Apple addressed CVE-2023-38606 in iOS 16.6 and macOS 13.5 by identifying the undocumented MMIO address ranges and programming the bootloader/secure monitor to permanently disable access to these hardware test registers after initial boot initialization.