
Dieses Paket ist kein vollständiger Root-Exploit. Es schaltet SELinux auf Permissive um und hält den Reclaim lange genug für Folgearbeiten aufrecht. Host-`uid=0` wird hier nicht erreicht.
Forschungsschnappschuss eines funktionierenden SELinux-only-Parks für das Samsung Galaxy S26 Ultra (SM-S948U1, Codename m3q) auf Firmware S948U1UES3AZF1 (GKI 6.12.30-android16-5).
Dieses Paket ist kein vollständiger Root. Es schaltet SELinux auf Permissive um und hält das Reclaim lange genug für Folgearbeit. Host-uid=0 wird hier nicht erreicht.
Erstellt auf Grundlage der GhostLock-/CVE-2026-43499-Arbeitslinie: Xiaomi-popsicle-Preload-Chassis, Samsung Root-My-Galaxy (einschließlich des emerald-Geräteziels und des m3q-Retargets), hier für AZF1-Park-only angepasst. Siehe Namensnennung.
kptr_restrict-/Same-Stack-Folgeschreibvorgänge). Diese verursachen Kernel-Panic und haben auf diesem Gerät Boots hinterlassen, die nur im abgesicherten Modus hochkommen (RescueParty-Klasse-Wiederherstellung), mit Factory-Reset-Risiko, wenn Sie weiterhin schlecht entsperren/wiederherstellen.bin/preload-4-s1.so ist AZF1-spezifisch. Andere Firmwares benötigen ein neu generiertes target.h.sched_blocked_reason-Aufrufer → Image-Basis).rt_mutex-Waiter-Seite (Linear-Map-VA).selinux_state.enforcing (enforce 1→0).WAIT_REQUEUE_PI-Settle, sodass der Park länger überlebt als ein roher, durch I4 verzögerter KP.LD_PRELOAD (/system/bin/true) am Leben, das Reclaim wird gehalten; protokolliert S1_READY.Im Erfolgsfall:
adb shell getenforce # Permissive
adb shell pidof true # non-empty (parked preload)
Das Hilfsskript schreibt außerdem VAs desselben Boots in finish_va.txt (KASLR, Spray, statische DATA-Symbole).
GhostLock bietet auf dieser Firmware einen eingeschränkten Arbitrary Write (NULL- und Linear-Map-/Spray-Werte in beschreibbares .data — nicht Kernel-Text/rodata als STORE-Wert) plus Permissive-SELinux. Soft-Root fehlt weiterhin:
target.h für Ihren Build neu generieren)adb, python3, Android-NDK r29+ (zum Neukompilieren)LD_PRELOAD in /system/bin/true ausführen kann# from a Linux/WSL host with the device attached
export SHARE="$PWD" # or path where this repo lives
bash park_cal_one.sh
adb shell getenforce # expect Permissive
park_cal_one.sh setzt SHARE standardmäßig auf dieses Repo-Verzeichnis. Bei Bedarf überschreiben:
SHARE=/path/to/this/repo PRELOAD=/path/to/this/repo/bin/preload-4-s1.so bash park_cal_one.sh
Lassen Sie den geparkten true-Prozess in Ruhe. Hängen Sie keine experimentellen zweiten Punches aus anderen Bäumen an.
powershell -ExecutionPolicy Bypass -File .\build-park.ps1
Setzen Sie $ndkBin im Skript, wenn Ihr NDK-Pfad abweicht.
make -C source clean preload
# output: source/build/bin/preload.so (same I4+R1e park flags as preload-4-s1)
cp source/build/bin/preload.so bin/preload-4-s1.so
Das Standard-target.h aktiviert Kandidat-I4 + R1e + S1-Park (AZF1_R1_SECOND_WAIT, AZF1_R1_THEN_S1). Aktivieren Sie für dieses Paket keine K3/K4-/Soft-Second-Punch-Flags.
bin/preload-4-s1.so prebuilt park payload (AZF1)
park_cal_one.sh push + run + VA parse
build-park.ps1 Windows NDK build (park only)
source/ preload sources + AZF1 target.h
generate_target.py optional retarget helper (needs your boot.img)
Dieser Schnappschuss stützt sich auf frühere öffentliche und Forschungsarbeiten. Anerkennung, wo sie hingehört:
Schwachstelle: CVE-2026-43499 (GhostLock — rt_mutex-Residual-Write der Prioritätsvererbung).
Dieser Baum: Port der Popsicle-Preload-Quellen für AZF1 / m3q (SM-S948U1 / S948U1UES3AZF1) mit Samsung-Anpassungen der RMG-/emerald-Klasse, reduziert auf ein SELinux-only-Park-Harness für Hardware im Besitz von Forschern. Kein Merge zurück in das Root-My-Galaxy-emerald-Produktziel.
| Benötigt | Warum |
|---|
| Info-Leak / AR | Heap-task_struct* oder /dev/uhid-Inode-VA (Shape-0-GhostLock-Read und mehrere Orakel sind auf AZF1 tot) |
| Cred / Abschluss | Sobald task bekannt ist: init_cred (oder uid-Felder) schreiben — Samsung KDP/RKP kann naive Zeigertausche blockieren; funktionierende Knox-Roots benötigen typischerweise Host-uid=0 und dann ein KDP-bewusstes KernelSU (ksud) |
| Stabiler Post-I4-Write | Zusätzliche GhostLock-Punches nach I4+R1e sind unsicher (führen zu KP). Behandeln Sie „einfach STORE erneut“ nicht als Abschluss |
| Phase | Status |
|---|
SELinux enforce→0 + Park (I4+R1e) | Funktioniert auf AZF1-Laborgerät |
| Weitere GhostLock-„W2“-Punches | Nicht durchführen — KP; kann Nur-Abgesicherter-Modus-Boot erzwingen |
Host-uid=0 / KernelSU-Installation | Nicht in diesem Paket — benötigt Leak + Knox-bewussten Abschluss |
| Projekt | Rolle in diesem Park |
|---|
| CVE-2026-43499-popsicle (Xiaomi popsicle) | GhostLock-Exploit-Chassis: LD_PRELOAD-Harness, KernelSnitch-Reclaim/Spray, fdset-codierter Waiter, pselect-Residual-Write-Kern, generate_target.py-/Makefile-Layout |
| Root-My-Galaxy + Root-My-Galaxy-Payloads | Samsung-Soft-Root-Rahmenwerk (W1-Park / W2-Folgeschritt), Knox-/KDP-bewusste Abschlussrichtung, m3q-/AZF1-Zielmaterial und der hier verwendete Tracefs-zuerst-KASLR-Ansatz statt Popsicles P0-boot_id-Slide |
| emerald (RMG-Geräteziel) | Früherer GhostLock-Port auf der emerald-Gerätelinie, der RMGs Samsung-Geometrie, Slide-Strategie und das W1-SELinux-Park-Auslieferungsmuster informierte; dieser m3q/AZF1-Park gehört zu dieser Linie, keine Neuimplementierung von Grund auf |