iMessage Media Parser Zero-Click → CoreAudio RCE → PAC/RPAC → Kernel → CryptoTokenKit Abuse

Reading time: 7 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Diese Seite fasst eine moderne iOS Zero-Click-Angriffsoberfläche und eine beobachtete End-to-End-Exploits-Kette zusammen, die iMessage automatische Medienparsing ausnutzt, um CoreAudio zu kompromittieren, BlastDoor zu umgehen, Pointer Authentication (PAC) über einen RPAC-Pfad zu überwinden, eskalierend in den Kernel und schließlich CryptoTokenKit für unautorisierte Schlüsselverwendungen zu missbrauchen.

Warnung: Dies ist eine edukative Zusammenfassung, um Verteidigern, Forschern und Red Teams die Techniken verständlich zu machen. Nicht offensiv verwenden.

High-level chain

  • Delivery vector: ein bösartiger Audio-Anhang (z. B. .amr / MP4 AAC), gesendet via iMessage/SMS.
  • Auto-ingestion: iOS parst Medien automatisch für Vorschauen und Konvertierungen ohne Benutzerinteraktion.
  • Parser bug: fehlerhafte Strukturen treffen CoreAudio’s AudioConverterService und korrumpieren Heap-Speicher.
  • Code exec in media context: RCE innerhalb des Media-Parsing-Prozesses; berichtet wurde, dass in bestimmten Pfaden die BlastDoor-Isolation umgangen wird (z. B. beim Framing-Pfad „known sender“).
  • PAC/RPAC bypass: sobald beliebiges R/W erreicht ist, ermöglicht ein PAC-Bypass im RPAC-Pfad stabile Kontrolle des Control Flows unter arm64e PAC.
  • Kernel escalation: die Kette wandelt Userland-Exec in Kernel-Exec um (z. B. via wireless/AppleBCMWLAN Codepfade und AMPDU-Handling, wie in den Logs unten zu sehen).
  • Post-exploitation: mit Kernel-Zugriff CryptoTokenKit missbrauchen, um mit Secure Enclave-geschützten Schlüsseln zu signieren, sensible Datenpfade (Keychain-Kontexte) auszulesen, Nachrichten/2FA abzufangen, Aktionen stillschweigend zu autorisieren und unbemerkte Überwachung (mic/camera/GPS) ohne Aufforderungen zu ermöglichen.

iMessage/BlastDoor attack surface notes

BlastDoor ist ein gehärteter Dienst, der dafür ausgelegt ist, nicht vertrauenswürdige Message-Inhalte zu parsen. Beobachtete Logs deuten jedoch auf Pfade hin, in denen Schutzmaßnahmen umgangen werden können, wenn Nachrichten vom „known sender“ gerahmt sind und wenn zusätzliche Filter (z. B. Blackhole) gelockert werden:

text
IDSDaemon    BlastDoor: Disabled for framing messages
SpamFilter   Blackhole disabled; user has disabled filtering unknown senders.

Kernaussagen:

  • Auto-parsing stellt weiterhin eine remote, zero-click attack surface dar.
  • Policy-/Kontextentscheidungen (bekannter Sender, Filterzustand) können die effektive Isolation maßgeblich verändern.

CoreAudio: AudioConverterService heap corruption (userland RCE)

Betroffene Komponente:

  • CoreAudio → AudioConverterService → AAC/AMR/MP4 Parsing- und Konvertierungsabläufe

Beobachteter Parser-Touchpoint (Logs):

text
AudioConverterService    ACMP4AACBaseDecoder.cpp: inMagicCookie=0x0, inMagicCookieByteSize=39

Technik-Zusammenfassung:

  • Fehlerhafte Container-/Codec-Metadaten (z. B. ungültiger/zu kurzer/NULL magic cookie) führen während der Decode-Initialisierung zu einer memory corruption.
  • Löst im iMessage Media-Conversion-Pfad aus, ohne dass der Benutzer tippen muss.
  • Führt zu code execution im Media-Parsing-Prozess. Die Ausarbeitung behauptet, dass dies BlastDoor im beobachteten Zustellpfad umgeht und die nächste Stufe ermöglicht.

Praktische Tipps:

  • Fuzz AAC/AMR magic cookie und MP4 codec atoms, wenn AudioConverterService-Konversionen das Ziel sind.
  • Fokus auf heap overflows/underflows, OOB reads/writes und Größen-/Längen-Verwechslungen bei der Decoder-Initialisierung.

PAC-Bypass über RPAC-Pfad (CVE-2025-31201)

arm64e Pointer Authentication (PAC) erschwert das Hijacking von return addresses und function pointers. Die Chain berichtet, PAC mithilfe eines RPAC path zu überwinden, sobald arbitrary R/W verfügbar ist.

Kernidee:

  • Mit arbiträrem R/W können Angreifer gültige, neu signierte Pointer erzeugen oder die Ausführung auf PAC-tolerante Pfade pivotieren. Der sogenannte “RPAC path” ermöglicht control-flow unter PAC-Beschränkungen und verwandelt eine userland RCE in ein zuverlässiges Kernel-Exploit-Setup.

Hinweise für Forscher:

  • Sammeln Sie info leaks, um KASLR zu umgehen und ROP/JOP chains auch unter PAC zu stabilisieren.
  • Ziel: Callsites, die PAC auf kontrollierbare Weise erzeugen oder authentifizieren (z. B. Signaturen, die auf attacker-controlled values erzeugt werden, vorhersehbare context keys oder Gadget-Sequenzen, die Pointer neu signieren).
  • Erwarten Sie Apple-Hardening-Unterschiede je nach SoC/OS; die Zuverlässigkeit hängt von leaks, Entropie und robusten Primitiven ab.

Kernel-Eskalation: wireless/AMPDU-Pfad-Beispiel

In der beobachteten Kette wurde, sobald sich ein Exploit im userland mit memory corruption und einem PAC-bypass-Primitive befand, die Kontrolle über den Kernel über code paths im Wi‑Fi-Stack (AppleBCMWLAN) bei fehlerhafter AMPDU-Verarbeitung erlangt. Beispiel-Logs:

text
IO80211ControllerMonitor::setAMPDUstat unhandled kAMPDUStat_ type 14
IO80211ControllerMonitor::setAMPDUstat unhandled kAMPDUStat_ type 13

Allgemeine Technik:

  • Verwende userland primitives, um kernel R/W oder kontrollierte Aufrufpfade aufzubauen.
  • Missbrauche erreichbare kernel surfaces (IOKit, networking/AMPDU, media shared memory, Mach interfaces), um kernel PC control oder arbitrary memory zu erreichen.
  • Stabilisiere durch Aufbau von read/write primitives und Umgehen von PPL/SPTM-Einschränkungen, wo anwendbar.

Post-exploitation: CryptoTokenKit and identity/signing abuse

Sobald der Kernel kompromittiert ist, können Prozesse wie identityservicesd nachgeahmt und privilegierte kryptographische Operationen über CryptoTokenKit ohne Benutzeraufforderungen ausgeführt werden. Beispiel-Logs:

text
CryptoTokenKit    operation:2 algo:algid:sign:ECDSA:digest-X962:SHA256
CryptoTokenKit    <sepk:p256(d) kid=9a86778f7163e305> parsed for identityservicesd

Auswirkung:

  • Verwende Secure Enclave–backed keys für unautorisierte Signaturen (Tokens, Nachrichten, Zahlungen), wodurch Vertrauensmodelle gebrochen werden, selbst wenn keys nicht exportiert werden.
  • Abfangen von 2FA-Codes/-Nachrichten im Verborgenen; Autorisieren von Zahlungen/Überweisungen; Aktivieren von verstecktem Mikrofon/Kamera/GPS.

Defensiver Ansatz:

  • Behandle Post-Kernel-Integritätsverletzungen als katastrophal: Erzwinge Runtime-Attestierung für CTK-Consumer; minimiere ambient authority; überprüfe entitlements zum Zeitpunkt der Nutzung.

Reproduction and telemetry hints (lab only)

  • Delivery: sende eine manipulierte AMR/MP4-AAC-Audiodatei an das Zielgerät via iMessage/SMS.
  • Beobachte Telemetrie auf die oben genannten Logzeilen rund um Parsing und die Reaktionen des wireless Stacks.
  • Stelle sicher, dass Geräte vollständig gepatcht sind; teste nur in isolierten Laborumgebungen.

Mitigations and hardening ideas

  • Patch level: iOS 18.4.1 behebt Berichten zufolge diese Kette; halte Geräte auf dem neuesten Stand.
  • Parser hardening: strikte Validierung für codec cookies/atoms und Längen; defensive Decoding-Pfade mit bounds checks.
  • iMessage isolation: vermeide das Aufweichen von BlastDoor/Blackhole in "known sender"-Kontexten für Media-Parsing.
  • PAC hardening: reduziere die Verfügbarkeit von PAC-Gadgets; stelle sicher, dass Signaturen an unvorhersehbare Kontexte gebunden sind; entferne PAC-tolerante, umgehbare Muster.
  • CryptoTokenKit: erfordere post-kernel attestation und starke entitlements zur Aufrufzeit für key-bound Operations.
  • Kernel surfaces: härte das wireless AMPDU/status-Handling; minimiere angreiferkontrollierte Inputs aus dem Userland nach einer Kompromittierung.

Affected versions (as reported)

  • iOS 18.x prior to iOS 18.4.1 (April 16, 2025).
  • Primary: CoreAudio → AudioConverterService (media auto-parsing path via iMessage/SMS).
  • Chained: PAC/RPAC path and kernel escalation via AppleBCMWLAN AMPDU handling.

References

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks