Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-20687-AppleJPEGDriver-UAF — CVE-2026-20687: AppleJPEGDriver startDecoder Timeout UAF — iOS/macOS-Kernel-Schwachstelle, die zu einem verzögerten Panic führt (A19 Pro, iOS 26.3 RC) | Kitploit
Tools/GitHubGitHub/enfilade-labs/cve-2026-20687-applejpegdriver-uaf
iOS-SicherheitSpeicherforensikSchwachstellenanalyseExploitationReverse EngineeringMobile SicherheitBinary-Exploitation
GitHubenfilade-labs/cve-2026-20687-applejpegdriver-uaf

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →

CVE-2026-20687-AppleJPEGDriver-UAF

CVE-2026-20687: AppleJPEGDriver startDecoder Timeout UAF — iOS/macOS-Kernel-Schwachstelle, die zu einem verzögerten Panic führt (A19 Pro, iOS 26.3 RC)

Repository anzeigen
2vor 4 MonatenNoch nicht geprüft
Teilen

CVE-2026-20687 — AppleJPEGDriver startDecoder Timeout UAF

CVE-2026-20687 · Enfilade · enfilade.io

Komponente: Kernel

Auswirkung: Eine App könnte einen unerwarteten Systemabsturz verursachen oder Kernel-Speicher beschreiben.

Beschreibung: Ein Use-after-Free-Problem wurde durch verbessertes Speichermanagement behoben.

— Apple Security Content, iOS 26.4 und iPadOS 26.4

Ziel

iOS26.3 (23D125) (getestet)
macOS—
KomponenteAppleJPEGDriver
GepatchtiOS 26.4 / iPadOS 26.4
HardwareiPhone18,2 (iPhone 17 Pro Max, A19 Pro)

Warnung

Das Ausführen des PoC führt zu einem Kernel-Panic auf dem Gerät. Speichern Sie Ihre Arbeit, bevor Sie es ausführen. Wiederholte Panics können zu Dateisystem-Korruption führen. Nur für Sicherheitsforschungszwecke.

Schwachstelle

Der Timeout-Pfad in startDecoder_sync gibt eine Anfrage frei, lässt aber ihren eingebetteten Queue-Node-Zeiger im Per-Codec-Vektor zurück. Ein späterer Queue-Durchlauf dereferenziert den veralteten Node und der Kernel stürzt unter MTE-Tag-Check-Erzwingung ab. Der Panic wird typischerweise bis zu einer nachfolgenden synchronen JPEG-Dekodierung verzögert — auf dem iPhone tritt dies zuverlässig auf, wenn die Kamera-App geöffnet wird.

Proof of Concept

root@kitploit:~
// Bereitet den Treiber vor; der Panic wird normalerweise bis zum Öffnen der Kamera verzögert.
IOServiceOpen("AppleJPEGDriver");
for (int i = 0; i < N; i++) {
    startDecoder_async();                   // queue_io_gated: vector.push(req + 0x78)
}
IOServiceClose(conn);

// Später löst das Öffnen der Kamera Folgendes aus:
startDecoder_sync();
    queue_io_gated: vector.push(req + 0x78);
    wait(10s) -> TIMEOUT;
    pool_free(req);                         // FEHLER: entfernt NICHT aus der Warteschlange (req + 0x78)

// Noch später (finish_io_gated):
fullSpeedRequestExist():
    node_ptr = vector[i];                   // veraltet: node_ptr == (freigegebenes req + 0x78)
    req2 = *(node_ptr + 0x8);               // UAF-Lesen -> MTE-Tag-Fehler -> Panic

Build & Run

  1. Öffnen Sie ios-app/Test.xcodeproj in Xcode.
  2. Wählen Sie ein physisches iOS-Gerät aus (der Simulator erreicht den Treiber nicht).
  3. Bauen, ausführen und Panic antippen (bereitet den Treiber vor und stellt asynchrone Arbeit in die Warteschlange).
  4. Öffnen Sie die Kamera-App, um den verzögerten Panic auszulösen.

Lizenz

Siehe LICENSE.

Tool herunterladen