CVE-2025-31200: CoreAudio APAC Channel Remapping Pufferüberlauf
Schwachstellenübersicht
CVE-2025-31200 ist eine Pufferüberlauf-Schwachstelle im Apple CoreAudio-Framework, die den Apple Positional Audio Codec (APAC) Decoder betrifft. Der Fehler befindet sich in der Funktion APACChannelRemapper::Process innerhalb von APACHOADecoder::DecodeAPACFrame.
Betroffene Systeme:
- iOS < 18.4.1
- macOS < 15.4.1
- Alle Apple-Geräte mit CoreAudio-Framework
Technische Details
Grundursache
Die Schwachstelle rührt von einem Logikfehler in der Kanal-Layout-Validierung her:
- Das
mRemappingArray wird basierend auf den unteren 2 Bytes von mChannelLayoutTag aus dem globalen Kanal-Layout dimensioniert.
- Während der Audio-Frame-Verarbeitung verwendet der Decoder eine separate Anzahl von Remapping-Kanälen, um dieses Array zu durchlaufen.
- Durch die Erzeugung einer Diskrepanz zwischen diesen beiden Kanalzahlen kann ein Angreifer einen Speicherzugriff außerhalb der Grenzen verursachen.
Angriffsvektor
Der Exploit funktioniert durch das Erstellen einer bösartigen APAC-Audiodatei mit:
- Globales Kanal-Layout: 4 Kanäle (steuert die Array-Allokationsgröße)
- Remapping-Kanal-Layout: 64 Kanäle (steuert die Iterationsanzahl)
- Ergebnis: 16-facher Speicherzugriff außerhalb der Grenzen während des Channel-Remappings
Proof of Concept
Dieses Repository enthält eine Python-Implementierung, die das bösartige APAC-Cookie erzeugt, das diese Schwachstelle ausnutzt.
Dateien
poc.py - Haupt-Exploit-Generator
generate_audio_simple.py - Audiodatei-Generierung
caf_utils.py - APAC-Cookie-Manipulationswerkzeuge
parser.py - Cookie-Parsing und Erstellung der Exploit-Payload
test_exploit.py - Exploit-Verifikation und Analyse
create_malicious_mp4.py - Erstellung der MP4-Payload
Verwendung
# Generate malicious APAC cookie
pip install numpy construct
python3 poc.py
# Verify exploit payload
python3 test_exploit.py
# Create malicious MP4 (requires macOS afconvert)
python3 create_malicious_mp4.py
Die Skripte erzeugen:
- Harmlose Test-Audiodateien (WAV, M4A, CAF)
exploit_cookie.dat - Bösartiges APAC-Cookie mit Kanalanzahl-Diskrepanz
malicious_apac.m4a - Bewaffnete MP4-Datei, bereit zum Testen
Ausnutzungsprozess
- Erstelle Kanal-Layout-Diskrepanz im APAC-Cookie (
poc.py)
- Überprüfe Payload-Integrität (
test_exploit.py)
- Bette Cookie in MP4/M4A-Audio-Container ein (
create_malicious_mp4.py)
- Setze bösartige Datei auf verwundbarem System ein
- Löse Verarbeitung durch Audiowiedergabe aus (AVAudioPlayer, Webbrowser, etc.)
- Zugriff außerhalb der Grenzen erfolgt in
APACChannelRemapper::Process
Testumgebung
Um den Exploit auf verwundbaren Systemen zu verifizieren:
- Ziel: macOS < 15.4.1 oder iOS < 18.4.1
- Werkzeuge: Xcode mit aktiviertem Guard Malloc
- Erwarteter Absturz:
APACChannelRemapper::Process mit EXC_BAD_ACCESS
- Debugging: Verwende LLDB, um Speicherkorruptionsmuster zu untersuchen
Auswirkungen und Ausnutzungspotenzial
Unmittelbare Auswirkungen
- Denial of Service: Garantierter Absturz bei Verarbeitung bösartiger Audiodaten
- Speicherkorruption: Lese-/Schreiboperationen außerhalb der Grenzen
- Anwendungsbeendigung: Jede App, die die bösartige Audiodatei verarbeitet, wird abstürzen
Fortgeschrittene Ausnutzung
Mit sorgfältiger Payload-Erstellung könnte diese Schwachstelle möglicherweise ausgenutzt werden für:
Code-Ausführung: Durch Kontrolle der Schreiboperationen außerhalb der Grenzen könnte ein Angreifer:
- Funktionszeiger oder virtuelle Tabelleneinträge überschreiben
- Heap-Metadaten korrumpieren, um beliebige Schreib-Primitive zu erreichen
- Mit anderen Schwachstellen verketten, um vollständige Systemkompromittierung zu erreichen
Sandbox-Escape: Da CoreAudio in verschiedenen Sicherheitskontexten läuft:
- Browser-Ausnutzung über HTML5-Audioelemente
- E-Mail-Client-Ausnutzung über Audio-Anhänge
- Systemdienst-Ausnutzung in mediaserverd
Fernangriffsszenarien:
- Webbasierte Angriffe durch bösartige Audioinhalte
- Messenger-App-Ausnutzung über Audio-Nachrichtenanhänge
- E-Mail-basierte Angriffe mit bösartigen Audiodateien
- Drive-by-Downloads von bösartigen Medieninhalten
Angriffsvektoren
- Webbrowser, die HTML5-Audio/Video mit APAC-Kodierung verarbeiten
- Medienplayer und Streaming-Anwendungen
- Messaging-Anwendungen, die Audioanhänge verarbeiten
- E-Mail-Clients, die Multimedia-Inhalte verarbeiten
- Systemmedien-Dienste, die automatisch Audiodateien verarbeiten
Gegenmaßnahmen
Apple hat diese Schwachstelle behoben in:
- iOS 18.4.1 (April 2025)
- macOS 15.4.1 (April 2025)
Der Fix validiert die Kanalanzahlen zwischen globalen und Remapping-Layouts vor der Verarbeitung und verhindert so die Diskrepanz, die den Pufferüberlauf verursacht.

Haftungsausschluss
Dieses Proof of Concept wird nur zu Bildungs- und Forschungszwecken bereitgestellt. Es demonstriert eine kritische Sicherheitslücke im Apple CoreAudio-Framework, um Sicherheitsforschern zu helfen, die Angriffsmechanismen zu verstehen und defensive Maßnahmen zu verbessern.