Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
lenovo_y700_tb320fc_on_CVE-2025-21479 — Escalation di privilegi in-memory nel kernel per Lenovo Legion Y700 2023 (TB320FC) che sfrutta CVE-2025-21479, una vulnerabilità SMMU della GPU Qualcomm Adreno, con gestione root ReSukiSU. | Kitploit
Strumenti/GitHubGitHub/xjoker/lenovo_y700_tb320fc_on_cve-2025-21479
Sicurezza AndroidEscalation di PrivilegiMeccanismi di PersistenzaExploitPentesting di App MobiliPost-ExploitSicurezza MobileSviluppo PayloadBinary Exploitation

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
GitHubxjoker/lenovo_y700_tb320fc_on_cve-2025-21479

lenovo_y700_tb320fc_on_CVE-2025-21479

Escalation di privilegi in-memory nel kernel per Lenovo Legion Y700 2023 (TB320FC) che sfrutta CVE-2025-21479, una vulnerabilità SMMU della GPU Qualcomm Adreno, con gestione root ReSukiSU.

Vedi Repository
12h 45m faNon ancora revisionato

TB320FC Kernel Root — CVE-2025-21479

English | 简体中文

Escalatione di privilegi in-memory del kernel per il Lenovo Legion Y700 2023 (TB320FC), sfruttando CVE-2025-21479 (vulnerabilità SMMU della GPU Qualcomm Adreno), con gestione completa del root fornita da ReSukiSU.

Nessuno sblocco del bootloader. Nessun flashing. Nessun PC richiesto per l'attivazione.

⚠️ Per ricerca di sicurezza autorizzata su dispositivi di tua proprietà. Vedi Disclaimer.


Dispositivo Target

Tutti gli offset e i comportamenti in questo progetto sono ottimizzati per il seguente dispositivo. Non aspettarti che funzioni su altri modelli/ROM senza una nuova taratura (vedi exploit/device_info.txt).

ModelloLenovo Legion Y700 2023 (TB320FC) / TB320FC_PRC
SoCQualcomm SM8475 (Snapdragon 8+ Gen 1, Adreno 730)
SistemaZUXOS 1.1.350 / Android 15 (SDK 35)
BuildAQ3A.240812.002 (TB320FC_CN_OPEN_USER_Q00031.0_V_ZUXOS_1.1.350_ST_250418)
Kernel5.10.209-android12-9-gef44381c3e04-ab50
Patch di sicurezza2025-03-05
BootloaderBloccato (questo progetto non lo sblocca)

Verificato funzionante a partire da 2026-09 sul firmware sopra indicato.

Funzionalità

Screenshot

RootActivator (attivato)ReSukiSU (funzionante, 2 moduli)
RootActivatorReSukiSU

A sinistra: RootActivator dopo l'attivazione riuscita — SELinux Enforcing, kernelsu caricato, su disponibile. A destra: gestore ReSukiSU — modalità LKM funzionante con 2 moduli (NeoZygisk + Vector).

Come Funziona

root@kitploit:~
RootActivator APK
   │
   ├─ libcheese.so ── KGSL SMMU exploit (CVE-2025-21479)
   │     1. Adreno 730 microcode access-check flaw (SDS packet mistaken for RingBuffer)
   │     2. Fake CP_SMMU_TABLE_UPDATE overwrites GPU TTBR0 → arbitrary physical R/W
   │     3. Zero selinux_state.enforcing; dump kernel from fixed PA 0xA8000000,
   │        parse kallsyms from the raw image (SM8475 has no physical KASLR)
   │     4. Patch __do_sys_capset with an escalation shellcode
   │        (prepare_kernel_cred(0) + commit_creds + clear TIF_SECCOMP);
   │        forked child calls capset() → uid 0 + full caps
   │
   └─ libksud.so (ReSukiSU) ── late-load mode
         1. kernelsu.ko loaded from ksud's embedded assets with manual relocation
            (does not rely on kernel symbol exports)
         2. install → /data/adb/ksu (ksud/busybox/bootctl)
         3. su channel online: /system/bin/su → kernel hook redirect → u:r:ksu:s0
         4. setenforce 1 — Enforcing restored, policy rules already injected by the ko

Punti ingegneristici notevoli

  • Qualcomm GKI riduce le esportazioni dei simboli del kernel. 77 simboli richiesti da KernelSU upstream sono mancanti, quindi un semplice insmod kernelsu.ko fallisce. Il late-load di ReSukiSU risolve i simboli da solo e si carica correttamente.
  • Fix dell'affinità CPU in cheese. Con più core, il testo del kernel patchato può essere eseguito con istruzioni obsolete su un altro core (coerenza della I-cache), causando un panic. Fissare il processo a un singolo core rende l'exploit molto più affidabile.
  • Sensibilità al carico. Durante la tempesta di inizializzazione post-boot (5-10 min) il tasso di fallimento è significativamente più alto. Vedi docs/TROUBLESHOOTING.md.

Avvio Rapido

1. Ottenere RootActivator

Compila dal sorgente (vedi Building) oppure scarica l'APK dalla pagina GitHub Releases (non memorizzato nel repository).

2. Installare il gestore ReSukiSU

Scarica da ReSukiSU Releases e installa l'APK del gestore.

3. Attivare

  1. Dopo il boot, attendi 5-10 minuti (lo strumento rileva automaticamente il carico del sistema e attende se necessario)
  2. Apri RootActivator → tocca Activate Root
  3. Attendi 3-4 minuti (il progresso è mostrato nel log integrato)
  4. Al termine, apri il gestore ReSukiSU e concedi il root alle tue app (Shizuku, terminali, ...)

4. (Opzionale) Supporto moduli Xposed

  1. Installa NeoZygisk (tramite gestore ReSukiSU → Moduli → installa da storage)
  2. Installa Vector (framework Xposed)
  3. Dopo che il root è attivo, avvia l'iniettore sul dispositivo (l'attivazione non lo fa):
    root@kitploit:~
    su -c 'sh /data/adb/modules/zygisksu/post-fs-data.sh'
    
  4. Dettagli in docs/VECTOR.md

Struttura del Repository

root@kitploit:~
├── LICENSE / CHANGELOG.md
├── README.md / README.zh-CN.md
├── exploit/            cheese exploit (CVE-2025-21479, ported to TB320FC)
│   ├── source/         cheese.c / kallsyms_lookup.c / adrenaline.h
│   ├── device_info.txt Target device parameters (offsets, verified facts)
│   └── build.sh        Build script (requires Android NDK)
├── app/                RootActivator (Kotlin, hand-rolled build, no Gradle)
│   ├── src/            MainActivity.kt (single file, code-only UI)
│   ├── res/            launcher icon (mipmap-xxxhdpi)
│   ├── AndroidManifest.xml
│   ├── debug.keystore  debug signing key used by the public APK
│   ├── build.py        Build script (kotlinc + d8 + aapt2 + apksigner)
│   └── README.md       App documentation
├── tools/              Helper scripts
│   ├── fetch_assets.py         Host: prepare native assets (exploit + ksud)
│   ├── neozygisk_setup.sh      On-device: NeoZygisk + Vector (see VECTOR.md)
│   ├── status_check.sh         On-device: root / module snapshot
│   └── check_mods.sh           On-device: module inspection helper
├── docs/               Documentation (English)
│   ├── ARCHITECTURE.md         Deep dive into both chains
│   ├── TROUBLESHOOTING.md      Failure handling, success-rate data
│   └── VECTOR.md               Xposed (NeoZygisk + Vector) setup
└── screenshots/        On-device PNG evidence

Compilazione

exploit (Android NDK)

root@kitploit:~
cd exploit
NDK=/path/to/android-ndk ./build.sh
# Produces ./cheese (arm64) → used as app/native/libcheese.so

RootActivator APK

root@kitploit:~
cd app
python ../tools/fetch_assets.py    # prepare native assets
python build.py                    # requires kotlinc + Android build-tools
# Produces RootActivator.apk

Variabili d'ambiente accettate dalla build (vedi app/build.py per i dettagli): KOTLIN_HOME, ANDROID_BUILD_TOOLS, ANDROID_JAR, KEYSTORE, JAVA_HOME. fetch_assets.py necessita inoltre di RESUKISU_APK (percorso di un APK ReSukiSU arm64) per estrarre libksud.so.

Limitazioni

  • Riattivazione richiesta dopo ogni riavvio (approccio in-memory, nulla persiste)
  • Tasso di fallimento dell'attivazione ~20-40% (inerente all'exploit; un fallimento riavvia il dispositivo senza perdita di dati — basta riprovare)
  • adb root non è disponibile (adbd cannot run as root in production builds)
  • Xposed richiede NeoZygisk; non usare mai ksud soft-reboot — blocca il sistema (usa invece l'iniezione ptrace di NeoZygisk)

Disclaimer

Questo progetto è fornito solo per ricerca di sicurezza e scopi educativi, e solo per dispositivi di tua proprietà o che sei esplicitamente autorizzato a testare. Sei l'unico responsabile di qualsiasi conseguenza e implicazione legale. L'exploit può riavviare il dispositivo; in rari casi è possibile la perdita di dati — esegui il backup dei dati importanti prima.

Crediti

  • zhuowei/cheese — exploit originale CVE-2025-21479 (Zhuowei Zhang)
  • ReSukiSU — fork di KernelSU con modalità late-load
  • NeoZygisk — iniezione ptrace nello zygote
  • Vector — framework Xposed
  • hawkes — adrenaline.h (definizioni comandi KGSL)

Licenza

MIT

Scarica lo strumento
CapacitàImplementazione
Escalatione di privilegiexploit cheese: bug KGSL SMMU → R/W fisico arbitrario della GPU → root in-memory (uid 0 + caps completi)
Gestione rootReSukiSU (fork di KernelSU) in modalità late-load carica kernelsu.ko; su servito da un hook in-kernel (u:r:ksu:s0)
SELinuxRipristinato a Enforcing dopo l'attivazione (le regole di policy di ReSukiSU restano applicate)
UX one-tapAPK RootActivator con exploit + ksud integrati; un singolo tap dopo il boot
Moduli XposedSupportati tramite NeoZygisk (iniezione ptrace nello zygote) + Vector
PersistenzaNessuna per design (in-memory): riattivare dopo ogni riavvio (~3-4 min)