
Android-Kernel-Exploit-Forschungspaket für CVE-2026-43499, enthält den Quellcode des Popsicle-Exploits, eine eingebettete su-Payload, einen Root-Bridge-Helfer und reproduzierbare Build-Artefakte.
Erstellungsdatum: 2026-08-08
Dieses Verzeichnis enthält den vollständigen popsicle-Quellcodebaum, die notwendigen Header-Dateien, die eingebettete su-Nutzlast, die Produktionsbinärdateien und die Laufzeitskripte, die im aktuellen Projekt wiederhergestellt werden konnten.
Es muss unterschieden werden:
source-final-correspondence-20260808/
├─ source/
│ ├─ exploit/
│ │ ├─ popsicle/
│ │ │ ├─ main.c
│ │ │ ├─ util.c
│ │ │ ├─ slide.c
│ │ │ ├─ fops.c
│ │ │ ├─ pipe.c
│ │ │ ├─ preload.c
│ │ │ ├─ root_bridge_helper.c
│ │ │ ├─ su_blob.S
│ │ │ ├─ su_daemon.c
│ │ │ ├─ common.h / offset.h / target.h
│ │ │ ├─ kernelsnitch/
│ │ │ └─ build/embed/su_daemon_aarch64_pie
│ │ └─ ghostlock-oneplus/kernelsnitch/
│ └─ target-files/popsicle-target.h
├─ embed/su_daemon_aarch64_pie
├─ artifacts/production/
├─ runtime/
├─ review-build/
├─ rebuild-current-source.ps1
├─ source-files.sha256
├─ binary-function-size-diff.md
├─ binary-function-size-diff.csv
└─ manifest.json
Produktionsdatei:
artifacts/production/t807d-popsicle-r562-show-callback-canonical-20260804.so
SHA-256:
B6DED21F90096A2FA2567807F79E7E8CCFDF9802DAF4628277A333DD8FE7DB71
Wichtigste Quellcode-Eingaben:
Produktionsdatei:
artifacts/production/t807d-root-bridge-helper-r557-show-verify-callback-20260804
SHA-256:
F7FF4C293902993183F98A8D314FA2ECD012A72A36F287A361C4503844EAAB91
Wichtigste Quellcode-Eingaben:
| Produktionsobjekt | Zugehöriger Quellcode |
|---|---|
| root bridge, marker, cred, SELinux, KSU-Hilfslogik | source/exploit/popsicle/root_bridge_helper.c |
| Eingebettete su-Grenzsymbole | source/exploit/popsicle/su_blob.S |
| su-Inhalt | source/exploit/popsicle/build/embed/su_daemon_aarch64_pie |
| Gemeinsame Definitionen und Zielkonfiguration |
Zwei leicht zu übersehende relative Pfadabhängigkeiten wurden ergänzt.
Erstens, target.h referenziert:
#include "../../target-files/popsicle-target.h"
Daher muss der Quellcode beibehalten werden als:
source/exploit/popsicle/target.h
source/target-files/popsicle-target.h
Zweitens, popsicle/kernelsnitch/utils.h und kernelsnitch.h referenzieren weiterhin:
../../ghostlock-oneplus/kernelsnitch/...
Daher muss auch source/exploit/ghostlock-oneplus/kernelsnitch/ beibehalten werden.
Wenn nur source/popsicle kopiert wird, entsteht ein unvollständiger Snapshot, der „vollständig aussieht, aber tatsächlich nicht kompiliert werden kann". Dieses Wiederherstellungspaket wurde gemäß dem ursprünglichen relativen Pfadlayout organisiert.
Toolchain:
NDK: D:Android
dk 29android-ndk-r29 API: 35 ABI: AArch64
Ausführung:
powershell.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -File .
ebuild-current-source.ps1
Ergebnis der Neukompilierung des aktuellen Quellcodes:
| Datei | Größe | SHA-256 |
|---|---|---|
| review-build/rebuild-current-source.so | 139600 | D5C8CF6D3A0A223F0BB3319FFAE926EF3EDF56DEF520B0A99CF7526B4437EC1A |
| review-build/rebuild-current-source-helper | 75008 | 025FD4BEB793227D9595D5739483798BBB8CDB94B69734399BE4C9F329032D8F |
Dies beweist, dass der Quellcodebaum kompilierbar ist, aber nicht die verifizierten Produktionsbinärdateien in artifacts/production ersetzen kann.
Zeitlinien-Beweise:
Zumindest die aktuellen Inhalte von common.h, pipe.c, preload.c, root_bridge_helper.c und util.c wurden erst nach der Erstellung der beiden Produktionsbinärdateien geschrieben oder geändert.
Im Projekt wurden auch nicht gefunden:
Daher ist es mit den vorhandenen Materialien möglich, den gesamten verfügbaren Quellcode wiederherzustellen und die Unterschiede zu lokalisieren, aber es ist nicht möglich, die Produktions-ELF in den damaligen byte-für-byte C-Quellcode zurückzuverwandeln.
binary-function-size-diff.md gibt die Funktionsgrößenunterschiede zwischen den Produktionsdateien und den neu kompilierten Dateien des aktuellen Quellcodes an.
Wichtige Unterschiede beim r562 SO:
Wichtige Unterschiede beim r557 helper:
Diese Unterschiede stimmen mit den in der Round592-Quellcodeüberprüfung dokumentierten Korrekturrichtungen überein: Kopieren von Umgebungsvariablenpfaden, Adressdifferenz unabhängiger Linker-Symbole, Behandlung von Allokierungsfehlern, reclaim-Bereinigung usw.
Die vollständigen Quellcode-Hashes befinden sich in source-files.sha256. Die Hashes der Produktionsartefakte, Skripte, eingebetteten Dateien und Überprüfungsbuild-Ergebnisse befinden sich in manifest.json.
Einstiegspunkt dieses Tests:
run_t807_jailbreak.cmd
Zugehöriges PowerShell:
run_t807_jailbreak.ps1
Es referenziert fest:
test-payload-current-source/
Darin sind SO und helper die gerade aus source/ neu kompilierten Artefakte, nicht die r562/r557-Rollback-Dateien in production/. Das Skript setzt ForceCurrentSourceTest=true, daher wird es auch dann fortfahren, die neuen Artefakte dieses Tests zu übertragen und zu testen, wenn sich das Gerät bereits im KernelSU-root-Zustand befindet.
Die drei vollständigen Ausgaben dieser Kompilierung:
| Datei | SHA-256 |
|---|---|
| review-build/rebuild-current-source.so | D5C8CF6D3A0A223F0BB3319FFAE926EF3EDF56DEF520B0A99CF7526B4437EC1A |
| review-build/rebuild-current-source-helper | 025FD4BEB793227D9595D5739483798BBB8CDB94B69734399BE4C9F329032D8F |
| review-build/su_daemon-rebuild | D57A7F657C8DD931D2C6A82306FA097AAD14AB11E5B773F1689DD03026A880FB |
Die Protokolle werden nach logs-current-source/ ausgegeben.
| Produktionsobjekt | Zugehöriger Quellcode |
|---|
| SO-Hauptablauf | source/exploit/popsicle/main.c |
| Allgemeine Kernel- und Userspace-Werkzeuge | source/exploit/popsicle/util.c |
| slide und Adresslokalisierung | source/exploit/popsicle/slide.c |
| fops und pselect-Auslösepfad | source/exploit/popsicle/fops.c |
| pipe, reclaim, direct write | source/exploit/popsicle/pipe.c |
| LD_PRELOAD-Einstieg und su-Dateischreiben | source/exploit/popsicle/preload.c |
| Eingebettete su-Grenzsymbole | source/exploit/popsicle/su_blob.S |
| Gemeinsame Definitionen | common.h, offset.h, target.h |
| Zielkonfiguration | source/target-files/popsicle-target.h |
| KernelSnitch-Header | source/exploit/popsicle/kernelsnitch/ und source/exploit/ghostlock-oneplus/kernelsnitch/ |
| Inhalt der eingebetteten Datei | source/exploit/popsicle/build/embed/su_daemon_aarch64_pie |
| wie r562 |
| Objekt | Dateizeit |
|---|
| r557 helper Produktionsdatei | 2026-08-04 22:47:29 |
| r562 SO Produktionsdatei | 2026-08-04 22:59:05 |
| main.c | 2026-08-04 22:22:16 |
| slide.c | 2026-08-04 21:54:58 |
| common.h | 2026-08-05 08:07:26 |
| pipe.c | 2026-08-05 08:07:34 |
| preload.c | 2026-08-05 08:07:30 |
| root_bridge_helper.c | 2026-08-05 08:10:10 |
| util.c | 2026-08-05 08:14:57 |