
Análise de pesquisa de segurança sobre a exploração da CVE-2026-43499 no Amazon Fire TV Stick 3ª Geração (sheldonp), do root temporário ao desbloqueio do bootloader.
sheldonp)Encadeando uma escalada de privilégios no kernel Linux com um downgrade de preloader e desbloqueio do bootloader.
Este repositório documenta minha reprodução autorizada da cadeia de exploração da CVE-2026-43499 em um Amazon Fire TV Stick 3ª Geração (sheldonp). A cadeia utilizou root temporário no kernel para executar um downgrade controlado de preloader e, em seguida, usou o fluxo de trabalho existente do Kamakiri BootROM para alcançar o fastboot desbloqueado e concluir o desbloqueio do bootloader.
Esta é uma reprodução e um estudo de caso específico do dispositivo. Eu não descobri a CVE-2026-43499, não criei o exploit original IonStack/GhostLock nem desenvolvi o Kamakiri. Os pesquisadores e desenvolvedores upstream são creditados abaixo.
[!IMPORTANT] Este write-up é um registro técnico, não um guia universal de root. A compatibilidade de build é importante, root temporário não é root persistente, e erros envolvendo Preloader, LK, TEE ou partições protegidas por dm-verity podem brickar o dispositivo permanentemente.
A cadeia completa foi concluída em 12 de setembro de 2026. Este repositório registra o dispositivo e as versões de software testados, os arquivos exatos utilizados, seus hashes SHA-256 e as evidências originais capturadas durante o processo.
| Campo | Alvo da reprodução |
|---|---|
| Dispositivo | Amazon Fire TV Stick 3ª Geração |
| Modelo | AFTSSS |
| Codename | sheldonp |
| Sistema operacional | Fire OS 7.7.1.6 / build PS7716.5666N |
| Incremental | 0036005356164 |
| Base Android | Android 9 |
| Kernel | 4.4.162+ |
| Host usado para o estágio BootROM | Ubuntu 26.04.1 LTS, inicializado como sessão live USB |
| Android platform tools | 37.0.1 |
| Implementação de root temporário | R0rt1z2/GhostLock 1.1.0, branch 4.4 |
| Implementação BootROM | kamakiri-sheldon-1.0 |
| Resultado | Root temporário, downgrade de preloader, bootloader desbloqueado, TWRP e Fire OS preservado |
Fora do escopo: descoberta de vulnerabilidade, uma nova implementação de exploit, exploração remota, root persistente ou suporte a dispositivos diferentes da unidade sheldonp testada. Nenhuma ROM customizada foi instalada durante esta reprodução.
A seguir estão os arquivos ZIP exatos utilizados durante esta reprodução. Os arquivos não são redistribuídos neste repositório; seus hashes SHA-256 são registrados para que cópias obtidas independentemente possam ser comparadas com os arquivos usados neste estudo de caso.
| Arquivo | Origem | Versão | SHA-256 |
|---|---|---|---|
ghostlock-sheldon-v1.1.0.zip | Guia de root temporário e downgrade no XDA | GhostLock 1.1.0 | 8D541F7DF58487AF6D6D45D778482D3455A71F62E32651751CFE0B2DDFC6554F |
kamakiri-sheldon-1.0.zip | Guia de desbloqueio do bootloader no XDA | Kamakiri Sheldon 1.0 | 1B07161D9F894935E5918A9B8F9A230F67B9487E9863C242E758338E8C6C5784 |
Esses hashes identificam as cópias usadas neste estudo de caso; os leitores ainda devem comparar seus downloads com as fontes upstream originais e revisar as licenças de terceiros aplicáveis.
A CVE-2026-43499, também conhecida como GhostLock, é um use-after-free no caminho futex/rtmutex de herança de prioridade do kernel Linux. Durante o rollback do proxy-lock, remove_waiter() operava sobre current em vez da tarefa armazenada em waiter->task. Como resultado, o waiter real poderia retornar ao espaço de usuário com pi_blocked_on ainda referenciando um rt_mutex_waiter em um frame de pilha do kernel já liberado.
A pesquisa original do IonStack transforma essa referência pendente de pilha em uma primitiva de escalada de privilégios local. R0rt1z2 adaptou a técnica para o Fire TV Stick 3ª Geração e o Fire TV Stick Lite (sheldonp/sheldon) executando Fire OS 7 em um kernel 4.4.
A distinção fundamental neste estudo de caso é que CVE-2026-43499 não desbloqueia o bootloader diretamente. Ele fornece acesso temporário em nível de kernel. Esse acesso de curta duração torna possível realizar o downgrade controlado do preloader necessário antes que a cadeia mais antiga do Kamakiri BootROM possa ser executada.
flowchart LR
A[Fire OS 7 on sheldonp] --> B[CVE-2026-43499 / GhostLock]
B --> C[Temporary root shell]
C --> D[Controlled preloader downgrade]
D --> E[Expected non-booting transition state]
E --> F[Kamakiri BootROM stage]
F --> G[Unlocked fastboot]
G --> H[Bootloader unlocked]
A cadeia atravessa duas fronteiras de segurança distintas:
Antes de alterar o dispositivo, identifiquei o codinome do hardware e registrei as versões do Fire OS, build, bootloader e kernel via ADB.
adb devices -l
adb shell getprop ro.product.device
adb shell getprop ro.product.model
adb shell getprop ro.build.version.release
adb shell getprop ro.build.version.incremental
adb shell getprop ro.build.fingerprint
adb shell getprop ro.bootloader
adb shell uname -a
adb shell id
A linha de base resultante foi sheldonp / AFTSSS, Fire OS PS7716.5666N, incremental 0036005356164, Android 9 e kernel 4.4.162+. O número de série foi deliberadamente omitido.

Conectei o Fire TV via USB com a depuração ADB ativada e usei o GhostLock 1.1.0, o pacote sheldon/sheldonp publicado com o guia XDA do R0rt1z2. O launcher específico do dispositivo reinicia o Fire TV para iniciar a partir de um estado limpo, implanta o exploit e tenta novamente quando necessário.
A exploração bem-sucedida cria um ambiente root temporário. Verifiquei o contexto de segurança a partir de um shell ADB em vez de tratar a conclusão do script isoladamente como prova:
adb shell
su
id
O contexto raiz é efémero e perde-se ao reiniciar. Esse comportamento é importante: esta etapa é uma primitiva habilitadora para o downgrade, não o mecanismo final de persistência nem o próprio desbloqueio do bootloader.
A execução bem-sucedida mostrou uid=0, alterou o SELinux para permissivo para o ambiente temporário, montou o su temporário e desativou os pacotes OTA do Fire OS tratados pela ferramenta.

O registo completo do exploit GhostLock é mantido como evidência de suporte.