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
hazel-cve-2026-43499 — Exploit racine temporaire spécifique au firmware pour Toshiba/Amazon Fire TV (hazel) utilisant CVE-2026-43499. Implémente une UAF futex-PI ARM32, une fuite d'adresse du noyau, une récupération de mm_struct et un patchage des credentials pour obtenir l'UID 0 via ADB. | Kitploit
Outils/GitHubGitHub/dorlow/hazel-cve-2026-43499
Sécurité AndroidSécurité des Systèmes EmbarquésEscalade de PrivilègesFrameworks d'ExploitationExploitationPost-ExploitationSécurité Matériel et IoTDéveloppement de Charges Utiles

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
Exploitation de Binaires
GitHubdorlow/hazel-cve-2026-43499

hazel-cve-2026-43499

Exploit racine temporaire spécifique au firmware pour Toshiba/Amazon Fire TV (hazel) utilisant CVE-2026-43499. Implémente une UAF futex-PI ARM32, une fuite d'adresse du noyau, une récupération de mm_struct et un patchage des credentials pour obtenir l'UID 0 via ADB.

Voir le dépôt
1268il y a 2 moisPas encore vérifié

Hazel Fire TV temporary root

Exploit de root temporaire pour la plateforme Amazon hazel Fire TV, basé sur CVE-2026-43499. L'exploit est destiné au firmware ARM32 Linux 4.9 partagé par les téléviseurs Hazel de plusieurs fabricants. Les profils couvrent actuellement les firmwares de PS7657.3645N à PS7716.5665N.

La configuration actuellement testée sur matériel est :

AppareilToshiba Fire TV (hazel)
Build Fire OSPS7716.5665N
NoyauLinux 4.9.113
Modèle produitAFTHA004 (C350)

[!WARNING] Cet exploit reste spécifique au firmware même s'il prend en charge plusieurs versions de Hazel. Les adresses du noyau, les offsets de structures et les paramètres de reclaim sont chargés depuis des profils stricts. PS7716.5665N est testé sur matériel ; les profils plus anciens fournis sont basés sur une analyse statique du firmware et nécessitent encore des retours de téléviseurs correspondants.

Ne contournez pas la correspondance des profils et ne copiez pas manuellement des adresses vers un firmware non apparenté. Les profils générés statiquement nécessitent toujours une confirmation sur le matériel correspondant.

Un échec de reclaim du tas peut provoquer un panic et redémarrer le téléviseur. Le root est temporaire et est perdu après redémarrage. Si votre téléviseur se fige, vous pouvez toujours le redémarrer en le débranchant.

Ce qu'il fait

L'exploit utilise CVE-2026-43499 pour obtenir temporairement l'UID 0 depuis l'environnement shell ADB normal.

La chaîne d'exploitation comprend :

  • l'exploitation d'un UAF futex-PI sur ARM32
  • la fuite d'adresses du noyau
  • le reclaim cross-cache de mm_struct
  • le reclaim contrôlé d'objets du noyau
  • des primitives de lecture/écriture du noyau
  • la découverte de la tâche courante
  • le patch des credentials
  • un serveur/client local de commandes root
  • une sélection stricte du profil de firmware et une validation d'exécution après lecture

Après une exécution réussie, l'exploit maintient en vie les objets du noyau requis par le chemin root et démarre un démon de commandes local.

SELinux reste Enforcing. Les commandes exécutées via le démon root conservent le domaine SELinux shell et l'ensemble de capacités disponibles sur ce firmware.

Fichiers

  • hazel_root.c exploit principal, étape de lecture/écriture du noyau, patch des credentials et client/serveur de commandes root
  • hazel_reclaim.h fuite d'adresses du noyau et reclaim cross-cache de mm_struct
  • hazel_profile.c, hazel_profile.h parseur de profils stricts et matcher d'exécution
  • profiles/ profils de firmware revus et générés
  • tools/profile_creator/ analyseur de firmware Python/uv et créateur de profils compatibles
  • tools/device_scripts/ utilitaires optionnels pour OTA, services Amazon et launcher

Prérequis

  • ADB
  • Android NDK r27d
  • Débogage ADB activé sur le téléviseur
  • un hôte capable de compiler un exécutable Android ARMv7

Les exemples ci-dessous supposent Linux et que adb est disponible dans $PATH.

Compilation (facultatif)

Définissez NDK sur le répertoire de votre Android NDK r27d :

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

Puis compilez :

"$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

Installation

Connectez-vous au téléviseur à l'aide d'ADB.

Si vous utilisez ADB réseau :

adb connect <TV_IP>:5555

Poussez 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/

Vérifier la sélection du profil sans déclencher l'exploit :

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

Le chargeur exige des correspondances exactes pour ro.product.device, l'empreinte de build, la version incrémentale, la version du noyau et l'architecture. Il refuse les profils malformés, les champs inconnus, les chemins d'exploit non pris en charge, les correspondances manquantes et les profils à correspondances multiples. Un profil explicite peut être vérifié avec :

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

Exécution

Démarrer à partir d'un démarrage propre :

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

Une exécution réussie se termine par une sortie similaire à :

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

La récupération est probabiliste. Une tentative infructueuse peut échouer proprement ou provoquer un panic et redémarrer le téléviseur.

Si le téléviseur redémarre, laissez-le démarrer normalement et réessayez.

Une fois l'exploit réussi, ne lancez pas une autre copie. Vous pouvez fermer le processus en cours d'exécution et passer aux commandes suivantes.

Exécuter des commandes en tant que root

Le même binaire agit comme client pour le démon root :

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

Par exemple :

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"'

Une commande root réussie doit rapporter :

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

Notez que l'UID 0 ne contourne pas SELinux. SELinux reste en mode Enforcing.

Désactiver les mises à jour OTA

Poussez et exécutez tools/device_scripts/disable_ota.sh via le démon 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"'

Le script désactive les deux paquets OTA de Fire OS, efface l'état de mise à jour en attente et vérifie l'état résultant du Package Manager. Il ne redémarre pas la TV.

Désactiver l'application des paquets Amazon, l'ACR et les métriques

tools/device_scripts/disable_amazon_services.sh désactive le proxy de configuration à distance Arcus, le service de blocage d'applications ADEP, la reconnaissance automatique de contenu (ACR) et les paquets de métriques Amazon dédiés présents sur le firmware Hazel testé. L'ACR est désactivé et ses données stockées sont effacées, mais son APK système en lecture seule n'est pas supprimé, ce qui rend l'opération réversible. Le script ne désactive pas CrashManager ni les paquets de journalisation de bas niveau, de sorte que les diagnostics de panique du noyau et Dropbox restent disponibles pendant le développement ou le dépannage de l'exploit.

Poussez le script et exécutez-le via le démon 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"'

Afficher l'état actuel sans rien modifier :

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

Restaurez les paquets plus tard si nécessaire :

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

L'état activé ou désactivé du package survit normalement à un redémarrage. La restauration des packages ne restaure pas les données du package effacées lors de leur désactivation.

Assistants du lanceur

Les scripts du lanceur se trouvent également dans tools/device_scripts/. Pour sélectionner Projectivy :

Télécharger l’outil