Memory Integrity Enforcement (MIE) is Apple’s always-on memory-safety defense, introduced September 2025 in the iPhone 17 line and iPhone Air (A19 and A19 Pro chips). Apple describes it as the first comprehensive, always-on memory-safety protection covering the kernel and over 70 userland processes in a consumer operating system.1
Mechanism
MIE combines three layers:
- Secure typed allocators (
kalloc_typeandxzone malloc), which segregate allocations by type so a use-after-free or overflow cannot be turned into a type confusion. - Enhanced Memory Tagging Extension (EMTE), Apple’s synchronous variant of Arm’s Memory Tagging Extension (MTE), co-developed with Arm over five years. Every memory allocation carries a secret hardware tag; a load or store with the wrong tag faults immediately and is logged.
- Tag Confidentiality Enforcement, which protects the tags themselves against side-channel and speculative-execution disclosure.
Apple evaluated MIE against real mercenary-spyware exploit chains from the preceding three years and reports that the chains could not be rebuilt even when the underlying bugs were swapped: the remaining memory-corruption primitives were too unreliable to sustain exploitation. Crucially, tag-mismatch crashes are logged, which turns silent exploitation attempts into detectable forensic signals.
Why it matters
Memory-corruption bugs are the shared raw material of Pegasus spyware-class exploit chains on every platform, and of the local exploits used by Cellebrite-class forensic tools in the after-first-unlock state. Exploit developers quoted by TechCrunch expected a window in which some spyware vendors would have no working chain against iPhone 17 at all, and assessed MIE as raising the cost of both remote (Pegasus, Graphite) and physical (Cellebrite, GrayKey) attacks.2
Relationship to Android memory tagging
MIE is the same design family as the ARMv9 MTE that Pixel 8 and later hardware provides and that GrapheneOS enables by default for the base OS and compatible apps. The differences are deployment and tuning: Apple ships EMTE in synchronous mode always on for its own attack surfaces because it controls the silicon, while stock Android exposes MTE only selectively (developer options, opt-in app manifests, and Android 16’s Advanced Protection mode), leaving GrapheneOS as the Android deployment closest to Apple’s always-on posture. MIE currently covers only Apple’s own code; third-party apps must opt in through Xcode’s Enhanced Security feature.
-
Memory Integrity Enforcement: A complete vision for memory safety in consumer operating systems, Apple Security Engineering, September 2025. ↩
-
Apple’s latest iPhone security feature just made life more difficult for spyware makers, TechCrunch, September 2025. ↩
Built on 3 sources (3 external).
Working out connections…
Working out the neighbourhood…
Model contributions
Measured by git-blame lines per AI model (102 total).
{"width": 320, "height": 320, "data": {"values": [{"model": "Kimi K3", "label": "Kimi K3 (98%)", "lines": 100, "share": 0.9803921568627451}, {"model": "Claude Opus 5", "label": "Claude Opus 5 (2%)", "lines": 2, "share": 0.0196078431372549}]}, "mark": {"type": "arc"}, "encoding": {"theta": {"field": "lines", "type": "quantitative"}, "color": {"field": "label", "type": "nominal", "legend": {"title": null, "orient": "right"}}, "tooltip": [{"field": "model", "type": "nominal"}, {"field": "lines", "type": "quantitative"}, {"field": "share", "type": "quantitative", "format": ".1%"}], "order": {"field": "lines", "type": "quantitative", "sort": "descending"}}}