Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
lenovo_y700_tb320fc_on_CVE-2025-21479 — Escalade de privilèges du noyau en mémoire pour Lenovo Legion Y700 2023 (TB320FC) exploitant CVE-2025-21479, une faille SMMU du GPU Qualcomm Adreno, avec la gestion root ReSukiSU. | Kitploit
Outils/GitHubGitHub/xjoker/lenovo_y700_tb320fc_on_cve-2025-21479
Sécurité AndroidEscalade de PrivilègesMécanismes de PersistanceExploitationPentesting d'Applications MobilesPost-ExploitationSécurité MobileDéveloppement de Charges UtilesExploitation de Binaires

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHubxjoker/lenovo_y700_tb320fc_on_cve-2025-21479

lenovo_y700_tb320fc_on_CVE-2025-21479

Escalade de privilèges du noyau en mémoire pour Lenovo Legion Y700 2023 (TB320FC) exploitant CVE-2025-21479, une faille SMMU du GPU Qualcomm Adreno, avec la gestion root ReSukiSU.

Voir le dépôt
il y a 12h 57mPas encore vérifié

TB320FC Kernel Root — CVE-2025-21479

English | 简体中文

Élévation de privilèges du noyau en mémoire pour le Lenovo Legion Y700 2023 (TB320FC), exploitant CVE-2025-21479 (vulnérabilité SMMU du GPU Qualcomm Adreno), avec une gestion complète du root fournie par ReSukiSU.

Pas de déverrouillage du bootloader. Pas de flashage. Pas de PC requis pour l'activation.

⚠️ Pour la recherche en sécurité autorisée sur des appareils que vous possédez. Voir Avertissement.


Appareil cible

Tous les offsets et comportements de ce projet sont ajustés pour l'appareil suivant. Ne vous attendez pas à ce qu'il fonctionne sur d'autres modèles/ROMs sans réajustement (voir exploit/device_info.txt).

ModèleLenovo Legion Y700 2023 (TB320FC) / TB320FC_PRC
SoCQualcomm SM8475 (Snapdragon 8+ Gen 1, Adreno 730)
SystèmeZUXOS 1.1.350 / Android 15 (SDK 35)
BuildAQ3A.240812.002 (TB320FC_CN_OPEN_USER_Q00031.0_V_ZUXOS_1.1.350_ST_250418)
Noyau5.10.209-android12-9-gef44381c3e04-ab50
Correctif de sécurité2025-03-05
BootloaderVerrouillé (ce projet ne le déverrouille pas)

Vérifié fonctionnel en 2026-09 sur le firmware ci-dessus.

Fonctionnalités

Captures d'écran

RootActivator (activé)ReSukiSU (fonctionnel, 2 modules)
RootActivatorReSukiSU

À gauche : RootActivator après activation réussie — SELinux Enforcing, kernelsu chargé, su disponible. À droite : gestionnaire ReSukiSU — mode LKM fonctionnel avec 2 modules (NeoZygisk + Vector).

Fonctionnement

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

Points d'ingénierie notables

  • Qualcomm GKI réduit les exports de symboles du noyau. 77 symboles requis par KernelSU upstream sont manquants, donc un simple insmod kernelsu.ko échoue. Le late-load de ReSukiSU résout les symboles lui-même et se charge correctement.
  • Correctif d'affinité CPU dans cheese. Avec plusieurs cœurs, le texte du noyau patché peut être exécuté avec des instructions obsolètes sur un autre cœur (cohérence du cache d'instructions), provoquant un panic. Épingler le processus à un seul cœur rend l'exploit bien plus fiable.
  • Sensibilité à la charge. Pendant la tempête d'initialisation post-démarrage (5-10 min), le taux d'échec est nettement plus élevé. Voir docs/TROUBLESHOOTING.md.

Démarrage rapide

1. Obtenir RootActivator

Compilez depuis les sources (voir Compilation) ou récupérez l'APK depuis la page GitHub Releases (non stocké dans le dépôt).

2. Installer le gestionnaire ReSukiSU

Téléchargez depuis ReSukiSU Releases et installez l'APK du gestionnaire.

3. Activer

  1. Après le démarrage, attendez 5-10 minutes (l'outil détecte automatiquement la charge système et attend si nécessaire)
  2. Ouvrez RootActivator → appuyez sur Activate Root
  3. Attendez 3-4 minutes (la progression est affichée dans le journal intégré)
  4. Une fois terminé, ouvrez le gestionnaire ReSukiSU et accordez le root à vos applications (Shizuku, terminaux, ...)

4. (Optionnel) Prise en charge des modules Xposed

  1. Installez NeoZygisk (via le gestionnaire ReSukiSU → Modules → installer depuis le stockage)
  2. Installez Vector (framework Xposed)
  3. Une fois le root actif, lancez l'injecteur sur l'appareil (l'activation ne le fait pas) :
    root@kitploit:~
    su -c 'sh /data/adb/modules/zygisksu/post-fs-data.sh'
    
  4. Détails dans docs/VECTOR.md

Organisation du dépôt

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

Compilation

exploit (Android NDK)

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

APK RootActivator

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

Variables d'environnement acceptées par la compilation (voir app/build.py pour les détails) : KOTLIN_HOME, ANDROID_BUILD_TOOLS, ANDROID_JAR, KEYSTORE, JAVA_HOME. fetch_assets.py nécessite en plus RESUKISU_APK (chemin vers un APK ReSukiSU arm64) pour extraire libksud.so.

Limitations

  • Réactivation requise après chaque redémarrage (approche en mémoire, rien ne persiste)
  • Taux d'échec d'activation de ~20-40 % (inhérent à l'exploit ; un échec redémarre l'appareil sans perte de données — réessayez simplement)
  • adb root n'est pas disponible (adbd cannot run as root in production builds)
  • Xposed nécessite NeoZygisk ; n'utilisez jamais ksud soft-reboot — cela bloque le système (utilisez plutôt l'injection ptrace de NeoZygisk)

Avertissement

Ce projet est fourni à des fins de recherche en sécurité et d'éducation uniquement, et uniquement pour les appareils que vous possédez ou que vous êtes explicitement autorisé à tester. Vous êtes seul responsable des conséquences et des implications légales. L'exploit peut redémarrer l'appareil ; dans de rares cas, une perte de données est possible — sauvegardez d'abord les données importantes.

Crédits

  • zhuowei/cheese — exploit original CVE-2025-21479 (Zhuowei Zhang)
  • ReSukiSU — fork de KernelSU avec mode late-load
  • NeoZygisk — injection ptrace du zygote
  • Vector — framework Xposed
  • hawkes — adrenaline.h (définitions des commandes KGSL)

Licence

MIT

Télécharger l’outil
CapacitéImplémentation
Élévation de privilègesexploit cheese : bug KGSL SMMU → lecture/écriture physique arbitraire GPU → root en mémoire (uid 0 + toutes les capacités)
Gestion du rootReSukiSU (fork de KernelSU) en mode late-load charge kernelsu.ko ; su servi par un hook dans le noyau (u:r:ksu:s0)
SELinuxRestauré en Enforcing après activation (les règles de politique ReSukiSU restent appliquées)
UX en un tapAPK RootActivator avec exploit + ksud intégrés ; un seul tap après le démarrage
Modules XposedPris en charge via NeoZygisk (injection ptrace du zygote) + Vector
PersistanceAucune par conception (en mémoire) : réactiver après chaque redémarrage (~3-4 min)