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
ghostlock-s26 — GhostLock (CVE-2026-43499) pour le Galaxy S26 | Kitploit
Outils/GitHubGitHub/snothin/ghostlock-s26
Sécurité AndroidEscalade de PrivilègesMécanismes de PersistanceExploitationPost-ExploitationSécurité MobileDéveloppement de Charges UtilesExploitation de Binaires
GitHubsnothin/ghostlock-s26

ghostlock-s26

GhostLock (CVE-2026-43499) pour le Galaxy S26

Voir le dépôt
9il y a 4h 5mPas 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

GhostLock (CVE-2026-43499) pour le Galaxy S26

CVE-2026-43499 porté sur la série Samsung Galaxy S26 — Android 16 / GKI 6.12. Un seul binaire, trois lignes de noyau, correspondance dynamique des paramètres à l'exécution : couvre théoriquement toute la série S26 sans compilation par build.

La plupart des efforts de portage de GhostLock ciblent un seul appareil ou un seul firmware. Ce dépôt est un nouveau portage qui réécrit chaque mécanisme pour la cible S26 et est censé couvrir toute la famille.

En un coup d'œil

En assurant la maintenance de snothin/CyberMeowfia, j'ai constaté que le canal pipe physrw d'origine était instable (il coupait le réseau), alors j'ai abandonné cette voie et exploré des alternatives. J'ai ensuite découvert que monovibe était allé plus loin sur la voie que j'explorais, j'ai adopté l'approche, et après des débogages répétés ce dépôt a pris forme.

  • Bug : course futex PI use-after-free → ensemencement du fd_set via pselect → écriture noyau d'un qword aligné par cycle → lecture/écriture physique arbitraire.
  • Appareils : Galaxy S26 / S26+ / S26 Ultra, variantes Snapdragon (CN + intl) et Exynos.
  • Résultat : l'helper en mode utilisateur s'exécute en tant que uid=0(root) context=u:r:kernel:s0 ; shell root persistant via su_daemon sur une socket unix abstraite.
  • Contournement de KDP : aucune écriture de credentials — l'étape root forge un work_struct sur system_unbound_wq dont la fonction est call_usermodehelper_exec_work, de sorte que le noyau exécute notre démon avec les creds d'init. La garde EL2 de KDP sur les pages de credentials n'est jamais déclenchée.
  • Contournement de DEFEX : l'helper monte en bind-mount le démon par-dessus un binaire système dormant avant l'exécution ; la règle safeplace de DEFEX voit un chemin en liste blanche.

Déroulement de l'attaque

root@kitploit:~
pselect + futex PI race
  → one aligned qword write per round
  → attr carrier (two fake misc fds)
      controller fd retargets the data pointer
      data fd reads/writes any kernel address
  → slide oracle (tracefs)
  → UMH root (workqueue injection)
      system_unbound_wq
      ptmx open/close storm wakes a worker
      kernel execs daemon with init creds
  → DEFEX bypass (bind-mount)
  → su_daemon listens on /data/local/tmp/temp_su.sock

Firmwares pris en charge

Les paramètres sont mis en correspondance par ligne de noyau (trois lignes : cn, intl, exynos), et non par build individuel. Les builds OTA inconnus retombent sur la ligne connue la plus proche selon le modèle et le CSC. Les modèles totalement inconnus sont rejetés (échec fermé). La liste de builds embarquée fait autorité dans exploit/src/params_table.c. Voir PORTING.md pour les paramètres nécessaires lors du portage vers un nouvel appareil ou firmware.

Compilation

Nécessite le NDK Android (r26+). Il suffit d'exécuter :

root@kitploit:~
cd exploit
make preload
# produces build/bin/preload.so (exploit) and build/embed/su_daemon_aarch64_pie (embedded daemon)

Utilisation

Poussez preload.so, su_daemon_aarch64_pie et ksud vers l'appareil (à exécuter depuis une session shell adb, uid 2000) :

root@kitploit:~
adb push exploit/build/bin/preload.so /data/local/tmp/
adb push exploit/build/embed/su_daemon_aarch64_pie /data/local/tmp/cve-2026-43499-root
adb push <ksud> /data/local/tmp/ksud
adb shell chmod 755 /data/local/tmp/cve-2026-43499-root /data/local/tmp/ksud

# Single attempt:
adb shell "env LD_PRELOAD=/data/local/tmp/preload.so sh"

L'exploit est probabiliste (une course) et nécessite généralement plusieurs tentatives. Lors d'une exécution réussie, su_daemon écoute sur /data/local/tmp/temp_su.sock, et n'importe quel processus local peut se connecter.

La garde de revendication de démarrage (/data/local/tmp/ghostlock-boot.log) enregistre le résultat de chaque exécution au démarrage ; une seconde exécution complète de la chaîne dans le même démarrage est rejetée (elle peut faire planter l'appareil). Supprimez le fichier ou définissez BOOT_FORCE=1 pour outrepasser.

Crédits

  • Nebula Security — découverte de CVE-2026-43499
  • polygraphene — CyberMeowfia comme base (première implémentation du CVE)
  • monovibe — s26u-m3q-temp-root : régions de verrouillage par processus enfant, root via UMH, discipline de revendication de démarrage
  • lukasmaar — kernelsnitch : fuite du hash futex de mm_struct (intégré dans exploit/src/kernelsnitch/)
  • veritas501 — primitive pipe : concept d'écrasement du CAN_MERGE du pipe
  • BuSung-dev — Root-My-Galaxy : base de l'application compagnon

License

Ce dépôt est publié sous la licence Apache-2.0 ; voir LICENSE pour le texte intégral et NOTICE pour la provenance du code.

Télécharger l’outil
ModèleNom de code de l'appareilBuilds testés
SM-S942x (S26 Snapdragon)m1qS9420ZCS4AZG1, S942QOPU1AZDE, S942U1UES4AZG3, S942USQS4AZG3
SM-S947x (S26+ Snapdragon)m2qS9470ZCS4AZG1, S947USQS4AZG3
SM-S9480 (S26 Ultra CN)m3qS9480ZCS3AZF1, S9480ZCS4AZG1 (build testé)
SM-S948x (S26 Ultra)m3qS9480ZHS4AZG1, S948BXXS4AZG5/6, S948NKSS4AZG3, S948U1UES2AZE1, S948USQS4AZG3
SM-S942B (S26 Exynos)m1sS942BXXS4AZG5
SM-S947B (S26+ Exynos)m2sS947BXXS3AZF1, S947BXXS4AZG5