Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
hazel-cve-2026-43499 — Exploit root temporaneo specifico per firmware per Toshiba/Amazon Fire TV (hazel) che utilizza CVE-2026-43499. Implementa UAF futex-PI ARM32, leak di indirizzi del kernel, reclaim di mm_struct e patch delle credenziali per ottenere UID 0 tramite ADB. | Kitploit
Strumenti/GitHubGitHub/dorlow/hazel-cve-2026-43499
Sicurezza AndroidSicurezza Sistemi EmbeddedEscalation di PrivilegiFramework di ExploitExploitPost-ExploitSicurezza Hardware e IoTSviluppo 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
GitHubdorlow/hazel-cve-2026-43499

hazel-cve-2026-43499

Exploit root temporaneo specifico per firmware per Toshiba/Amazon Fire TV (hazel) che utilizza CVE-2026-43499. Implementa UAF futex-PI ARM32, leak di indirizzi del kernel, reclaim di mm_struct e patch delle credenziali per ottenere UID 0 tramite ADB.

Vedi Repository
12682 mesi faNon ancora revisionato

Hazel Fire TV temporary root

Exploit di root temporaneo per la piattaforma Amazon hazel Fire TV, basato su CVE-2026-43499. L'exploit è destinato al firmware ARM32 Linux 4.9 condiviso dai televisori Hazel di diversi produttori. I profili attualmente coprono il firmware da PS7657.3645N a PS7716.5665N.

La configurazione attualmente testata su hardware è:

DispositivoToshiba Fire TV (hazel)
Build Fire OSPS7716.5665N
KernelLinux 4.9.113
ModelloAFTHA004 (C350)

[!WARNING] Questo exploit rimane specifico per il firmware anche se supporta più release Hazel. Gli indirizzi del kernel, gli offset delle strutture e le impostazioni di reclaim sono caricati da profili rigorosi. PS7716.5665N è testato su hardware; i profili più vecchi inclusi si basano su analisi statica del firmware e necessitano ancora di segnalazioni da televisori corrispondenti.

Non aggirare la corrispondenza dei profili né copiare manualmente gli indirizzi su un firmware non correlato. I profili generati staticamente richiedono comunque conferma su hardware corrispondente.

Un reclaim dell'heap fallito può causare un panic e riavviare il televisore. Il root è temporaneo e viene perso dopo il riavvio. Se il televisore si blocca, è sempre possibile spegnerlo e riaccenderlo.

Cosa fa

L'exploit utilizza CVE-2026-43499 per ottenere temporaneamente UID 0 dall'ambiente shell ADB normale.

La catena di exploit include:

  • sfruttamento della UAF futex-PI su ARM32
  • leak di indirizzi del kernel
  • reclaim cross-cache di mm_struct
  • reclaim controllato di oggetti del kernel
  • primitive di lettura/scrittura del kernel
  • scoperta del task corrente
  • patching delle credenziali
  • un server/client locale per comandi root
  • selezione rigorosa del profilo firmware e validazione runtime post-lettura

Dopo un'esecuzione riuscita, l'exploit mantiene vivi gli oggetti del kernel richiesti dal percorso di root e avvia un demone locale per i comandi.

SELinux rimane Enforcing. I comandi eseguiti tramite il demone root mantengono il dominio SELinux shell e il capability bounding set disponibile su questo firmware.

File

  • hazel_root.c exploit principale, fase di lettura/scrittura del kernel, patching delle credenziali e client/server per comandi root
  • hazel_reclaim.h leak di indirizzi del kernel e reclaim cross-cache di mm_struct
  • hazel_profile.c, hazel_profile.h parser rigoroso dei profili e matcher runtime
  • profiles/ profili firmware revisionati e generati
  • tools/profile_creator/ analizzatore firmware Python/uv e creatore di profili compatibili
  • tools/device_scripts/ utilità opzionali per OTA, servizi Amazon e launcher

Requisiti

  • ADB
  • Android NDK r27d
  • Debug ADB abilitato sul televisore
  • un host in grado di compilare un eseguibile Android ARMv7

Gli esempi seguenti presuppongono Linux e che adb sia disponibile in $PATH.

Build (opzionale)

Imposta NDK sulla directory del tuo Android NDK r27d:

export NDK=/path/to/android-ndk-r27d

Poi compila:

"$NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/clang" \
    --target=armv7a-linux-androideabi28 \
    -O2 -g0 -Wall -Wextra -Wpedantic -fPIE -pie \
    hazel_root.c hazel_profile.c -o hazel_root \
    -pthread

Installazione

Connettersi al televisore tramite ADB.

Se si utilizza ADB di rete:

adb connect <TV_IP>:5555

Invia l'exploit:

adb shell mkdir -p /data/local/tmp/profiles
adb push hazel_root /data/local/tmp/hazel_root
adb shell chmod 755 /data/local/tmp/hazel_root
adb push profiles/. /data/local/tmp/profiles/

Verifica la selezione del profilo senza attivare l'exploit:

adb shell 'cd /data/local/tmp && ./hazel_root --check-profile'

Il loader richiede corrispondenze esatte per ro.product.device, build fingerprint, versione incrementale, kernel release e architettura. Rifiuta profili malformati, campi sconosciuti, percorsi di exploit non supportati, corrispondenze mancanti e profili multipli corrispondenti. Un profilo esplicito può essere verificato con:

adb shell 'cd /data/local/tmp && ./hazel_root --check-profile --profile profiles/PROFILE.conf'

Esecuzione

Avvia da un avvio pulito:

adb shell 'cd /data/local/tmp && ./hazel_root'

Un'esecuzione riuscita termina con un output simile a:

[root] uid=0 euid=0 gid=0
[ROOT] uid=0 daemon pid=... socket=@hazel_root

Il reclaim è probabilistico. Un tentativo non riuscito può fallire in modo pulito oppure andare in panic e riavviare la TV.

Se la TV si riavvia, lasciala avviare normalmente e riprova.

Una volta che l'exploit ha successo, non avviare un'altra copia. Puoi chiudere il processo in esecuzione e procedere con i comandi successivi.

Esegui i comandi come root

Lo stesso binario funge da client per il daemon root:

adb shell 'cd /data/local/tmp && ./hazel_root --client id'

Ad esempio:

adb shell 'cd /data/local/tmp && ./hazel_root --client getenforce'
adb shell 'cd /data/local/tmp && ./hazel_root --client cat /proc/self/status'
adb shell 'cd /data/local/tmp && ./hazel_root --client "id; uname -a"'

Un comando root eseguito con successo dovrebbe riportare:

uid=0(root) gid=0(root) context=u:r:shell:s0

Nota che l'UID 0 non aggira SELinux. SELinux rimane in modalità Enforcing.

Disabilitare gli aggiornamenti OTA

Inviare ed eseguire tools/device_scripts/disable_ota.sh tramite il demone root:

adb push tools/device_scripts/disable_ota.sh /data/local/tmp/disable_ota.sh
adb shell chmod 755 /data/local/tmp/disable_ota.sh
adb shell 'cd /data/local/tmp && ./hazel_root --client "sh /data/local/tmp/disable_ota.sh"'

Lo script disabilita entrambi i pacchetti OTA di Fire OS, cancella lo stato in sospeso dell'updater e verifica lo stato risultante del Package Manager. Non riavvia la TV.

Disabilitare l'applicazione forzata dei pacchetti Amazon, ACR e le metriche

tools/device_scripts/disable_amazon_services.sh disabilita il proxy di configurazione remota Arcus, il servizio di blocco delle applicazioni ADEP, l'Automatic Content Recognition (ACR) e i pacchetti dedicati alle metriche Amazon presenti sul firmware Hazel testato. ACR viene disabilitato e i suoi dati memorizzati vengono cancellati, ma il suo APK di sistema in sola lettura non viene eliminato, rendendo l'operazione reversibile. Lo script non disabilita CrashManager né i pacchetti di logging di basso livello, quindi i diagnostici per kernel panic e Dropbox rimangono disponibili durante lo sviluppo o la risoluzione dei problemi dell'exploit.

Inviare lo script e avviarlo tramite il daemon root:

adb push tools/device_scripts/disable_amazon_services.sh /data/local/tmp/disable_amazon_services.sh
adb shell chmod 755 /data/local/tmp/disable_amazon_services.sh
adb shell 'cd /data/local/tmp && ./hazel_root --client "sh /data/local/tmp/disable_amazon_services.sh"'

Mostra lo stato attuale senza modificare nulla:

adb shell 'cd /data/local/tmp && ./hazel_root --client "sh /data/local/tmp/disable_amazon_services.sh status"'

Ripristina i pacchetti in seguito se necessario:

adb shell 'cd /data/local/tmp && ./hazel_root --client "sh /data/local/tmp/disable_amazon_services.sh restore"'

Lo stato abilitato o disabilitato del pacchetto normalmente sopravvive a un riavvio. Il ripristino dei pacchetti non ripristina i dati del pacchetto cancellati durante la loro disabilitazione.

Helper del launcher

Gli script del launcher si trovano anch'essi in tools/device_scripts/. Per selezionare Projectivy:

Scarica lo strumento