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
ghostlock-s26 — GhostLock (CVE-2026-43499) per Galaxy S26 | Kitploit
Strumenti/GitHubGitHub/snothin/ghostlock-s26
Sicurezza AndroidEscalation di PrivilegiMeccanismi di PersistenzaExploitPost-ExploitSicurezza MobileSviluppo PayloadBinary Exploitation
GitHubsnothin/ghostlock-s26

ghostlock-s26

GhostLock (CVE-2026-43499) per Galaxy S26

Vedi Repository
93h 45m faNon ancora revisionato

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

GhostLock (CVE-2026-43499) per Galaxy S26

CVE-2026-43499 portato alla serie Samsung Galaxy S26 — Android 16 / GKI 6.12. Un solo binario, tre linee di kernel, corrispondenza dinamica dei parametri in fase di esecuzione: teoricamente copre l'intera serie S26 senza compilazione per build.

La maggior parte dei tentativi di porting di GhostLock prende di mira un singolo dispositivo o un singolo firmware. Questo repository è un porting nuovo che riscrive ogni meccanismo per il target S26 e si prevede che copra l'intera famiglia.

In sintesi

Mentre mantenevo snothin/CyberMeowfia, ho scoperto che il canale pipe physrw originale era instabile (tagliava la rete), quindi ho abbandonato quella strada ed esplorato alternative. Più tardi ho scoperto che monovibe era andato oltre lungo il percorso che stavo esplorando, ho adottato l'approccio e dopo ripetuti debugging questo repository ha preso forma.

  • Bug: corsa use-after-free nel futex PI → seeding di fd_set in pselect → una scrittura kernel allineata da una qword per ciclo → lettura/scrittura fisica arbitraria.
  • Dispositivi: Galaxy S26 / S26+ / S26 Ultra, varianti Snapdragon (CN + intl) ed Exynos.
  • Risultato: l'usermode helper viene eseguito come uid=0(root) context=u:r:kernel:s0; shell root persistente tramite su_daemon su un socket unix astratto.
  • Bypass KDP: nessuna scrittura di credenziali — lo stadio root forgia una work_struct su system_unbound_wq la cui funzione è call_usermodehelper_exec_work, così il kernel esegue il nostro daemon con le credenziali di init. La protezione EL2 di KDP sulle pagine delle credenziali non viene mai attivata.
  • Bypass DEFEX: l'helper monta con bind-mount il daemon su un binario di sistema dormiente prima di exec; la regola safeplace di DEFEX vede un percorso in whitelist.

Flusso dell'attacco

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

Firmware supportati

I parametri vengono associati per linea di kernel (tre linee: cn, intl, exynos), non per singola build. Le build OTA sconosciute vengono ricondotte alla linea nota più vicina in base a modello e CSC. I modelli completamente sconosciuti vengono rifiutati (fail-closed). L'elenco delle build incorporato fa fede in exploit/src/params_table.c. Vedi PORTING.md per i parametri necessari quando si effettua il porting su un nuovo dispositivo o firmware.

Compilazione

Richiede Android NDK (r26+). Basta eseguire:

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

Utilizzo

Trasferisci preload.so, su_daemon_aarch64_pie e ksud sul dispositivo (esegui da una sessione adb shell, 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 è probabilistico (una race) e di solito richiede tentativi ripetuti. In una esecuzione riuscita, su_daemon resta in ascolto su /data/local/tmp/temp_su.sock, e qualsiasi processo locale può connettersi.

La protezione boot-claim (/data/local/tmp/ghostlock-boot.log) registra l'esito di ogni boot; una seconda esecuzione dell'intera catena nello stesso boot viene rifiutata (può mandare in crash il dispositivo). Cancella il file o imposta BOOT_FORCE=1 per ignorare.

Crediti

  • Nebula Security — scoperta di CVE-2026-43499
  • polygraphene — CyberMeowfia baseline (prima implementazione del CVE)
  • monovibe — s26u-m3q-temp-root: regioni di lock per-child, root UMH, disciplina boot-claim
  • lukasmaar — kernelsnitch: leak dell'hash futex di mm_struct (incluso in exploit/src/kernelsnitch/)
  • veritas501 — primitiva pipe: concetto di overwrite di CAN_MERGE tramite pipe
  • BuSung-dev — Root-My-Galaxy: base per l'app companion

License

Questo repository è rilasciato sotto licenza Apache-2.0; vedi LICENSE per il testo completo e NOTICE per la provenienza del codice.

Scarica lo strumento
ModelloNome in codiceBuild testate
SM-S942x (S26 Snapdragon)m1qS9420ZCS4AZG1, S942QOPU1AZDE, S942U1UES4AZG3, S942USQS4AZG3
SM-S947x (S26+ Snapdragon)m2qS9470ZCS4AZG1, S947USQS4AZG3
SM-S9480 (S26 Ultra CN)m3qS9480ZCS3AZF1, S9480ZCS4AZG1 (build testata)
SM-S948x (S26 Ultra)m3qS9480ZHS4AZG1, S948BXXS4AZG5/6, S948NKSS4AZG3, S948U1UES2AZE1, S948USQS4AZG3
SM-S942B (S26 Exynos)m1sS942BXXS4AZG5
SM-S947B (S26+ Exynos)m2sS947BXXS3AZF1, S947BXXS4AZG5