Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
cve-2026-43499-firetv-sheldonp-writeup — Отчёт по исследованию безопасности об эксплуатации CVE-2026-43499 на Amazon Fire TV Stick 3-го поколения (sheldonp), от временного root до разблокировки загрузчика. | Kitploit
Инструменты/GitHubGitHub/accessmodifier364/cve-2026-43499-firetv-sheldonp-writeup
Безопасность AndroidБезопасность встроенных системПовышение привилегийАнализ уязвимостейЭксплуатацияОбратная инженерияМобильная безопасностьБезопасность оборудования и IoTСтатьи и Исследования

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Обучение и Образование
GitHubaccessmodifier364/cve-2026-43499-firetv-sheldonp-writeup

cve-2026-43499-firetv-sheldonp-writeup

Отчёт по исследованию безопасности об эксплуатации CVE-2026-43499 на Amazon Fire TV Stick 3-го поколения (sheldonp), от временного root до разблокировки загрузчика.

Репозиторий
8 ч 12 мин назадЕщё не проверено

CVE-2026-43499 на Amazon Fire TV Stick 3-го поколения (sheldonp)

Цепочка от повышения привилегий в ядре Linux до понижения версии preloader и разблокировки загрузчика.

License: CC BY 4.0

Обзор

Этот репозиторий документирует моё авторизованное воспроизведение цепочки эксплуатации CVE-2026-43499 на Amazon Fire TV Stick 3-го поколения (sheldonp). В цепочке использовался временный root на уровне ядра для выполнения контролируемого понижения версии preloader, а затем применялся существующий рабочий процесс Kamakiri BootROM для достижения разблокированного fastboot и завершения разблокировки загрузчика.

Это воспроизведение и тематическое исследование конкретного устройства. Я не обнаруживал CVE-2026-43499, не создавал оригинальный эксплойт IonStack/GhostLock и не разрабатывал Kamakiri. Исследователи и разработчики оригинальных работ указаны в разделе благодарностей ниже.

[!IMPORTANT] Этот отчёт — техническая запись, а не универсальное руководство по получению root. Совместимость сборок имеет значение, временный root — это не постоянный root, а ошибки, связанные с Preloader, LK, TEE или разделами, защищёнными dm-verity, могут навсегда превратить устройство в кирпич.

Запись воспроизведения

Полная цепочка была завершена 12 сентября 2026 года. Этот репозиторий фиксирует протестированное устройство и версии программного обеспечения, точные использованные архивы, их хеши SHA-256 и оригинальные доказательства, собранные в процессе.

Область применения

Вне области применения: обнаружение уязвимости, новая реализация эксплойта, удалённая эксплуатация, постоянный root или поддержка устройств, отличных от протестированного экземпляра sheldonp. Во время этого воспроизведения кастомная прошивка не устанавливалась.

Архивы воспроизведения

Ниже приведены точные ZIP-архивы, использованные при этом воспроизведении. Архивы не распространяются в этом репозитории; их хеши SHA-256 записаны, чтобы независимо полученные копии можно было сравнить с файлами, использованными в этом тематическом исследовании.

Эти хеши идентифицируют копии, использованные в этом тематическом исследовании; читателям всё равно следует сравнивать свои загрузки с оригинальными источниками и ознакомиться с применимыми лицензиями третьих сторон.

Техническая справка

CVE-2026-43499, также известная как GhostLock, — это use-after-free в пути priority-inheritance futex/rtmutex ядра Linux. Во время отката proxy-lock функция remove_waiter() работала с current вместо задачи, сохранённой в waiter->task. В результате фактический ожидающий мог вернуться в пространство пользователя, когда pi_blocked_on всё ещё ссылался на rt_mutex_waiter в освобождённом кадре стека ядра.

Оригинальное исследование IonStack превращает эту висячую ссылку на стек в примитив локального повышения привилегий. R0rt1z2 адаптировал эту технику для Fire TV Stick 3-го поколения и Fire TV Stick Lite (sheldonp/sheldon), работающих под управлением Fire OS 7 на ядре 4.4.

Ключевое отличие в этом тематическом исследовании состоит в том, что CVE-2026-43499 не разблокирует загрузчик напрямую. Она обеспечивает временный доступ на уровне ядра. Этот недолговечный доступ позволяет выполнить контролируемое понижение версии preloader, необходимое перед запуском более старой цепочки Kamakiri BootROM.

Цепочка эксплуатации

root@kitploit:~
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]

Цепочка пересекает две отдельные границы безопасности:

  1. Граница ядра: непривилегированный локальный процесс получает временный root-контекст через GhostLock.
  2. Граница цепочки загрузки: временный root подготавливает устройство к известному пути разблокировки на основе BootROM, восстанавливая совместимый preloader.

Методология

1. Установление базовой линии

Перед изменением устройства я определил кодовое имя аппаратного обеспечения и записал версии Fire OS, сборки, загрузчика и ядра через ADB.

root@kitploit:~
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

Полученная базовая линия: sheldonp / AFTSSS, Fire OS PS7716.5666N, инкрементальная версия 0036005356164, Android 9 и ядро 4.4.162+. Серийный номер намеренно опущен.

Базовая линия ADB shell, показывающая непривилегированный контекст shell

2. Получение временного root с помощью GhostLock

Я подключил Fire TV по USB с включённой отладкой ADB и использовал GhostLock 1.1.0, пакет sheldon/sheldonp, опубликованный вместе с руководством R0rt1z2 на XDA. Специфичный для устройства лаунчер перезагружает Fire TV для запуска из чистого состояния, разворачивает эксплойт и при необходимости повторяет попытки.

Успешная эксплуатация создаёт временную root-среду. Я проверил контекст безопасности из ADB shell, а не полагался только на завершение скрипта как на доказательство:

root@kitploit:~
adb shell
su
id

Root-контекст эфемерен и теряется при перезагрузке. Такое поведение важно: этот этап — обеспечивающий примитив для понижения версии, а не окончательный механизм персистентности или сама разблокировка загрузчика.

Успешный запуск показал uid=0, перевёл SELinux в режим permissive для временной среды, смонтировал временный su и отключил пакеты OTA Fire OS, обрабатываемые инструментом.

Root shell GhostLock, показывающий uid 0 и изменения пакетов OTA

Полная трассировка эксплойта GhostLock сохранена как подтверждающее доказательство.

3. Понижение версии preloader

Имея доступ к временному root, я использовал специальный рабочий процесс понижения версии из пакета вместо ручной записи разделов прошивки. Это восстановило preloader, совместимый с существующим путём Kamakiri.

После понижения версии Fire TV намеренно перестал загружаться в Fire OS. В этом конкретном рабочем процессе такое неработающее состояние является ожидаемой передачей между этапом работающего ядра и этапом USB BootROM. Его нельзя путать с доказательством того, что произвольная неудачная прошивка поддаётся восстановлению.

[!CAUTION] Никогда не стирайте Preloader. Не импровизируйте с записями в LK, TEE, Preloader, boot, recovery, system, vendor или другие защищённые разделы. Руководства оригинальных авторов предупреждают, что повреждение критической прошивки может привести к необратимому аппаратному кирпичу, поскольку рабочий путь восстановления может больше не остаться доступным.

GhostLock сообщает об успешной записи уязвимого preloader

4. Запуск цепочки Kamakiri BootROM

Рабочий процесс Kamakiri, использованный для этого устройства, поддерживался и документировался для Linux. Поэтому я загрузил live-сессию Ubuntu и выполнил там весь рабочий процесс разблокировки, включая низкоуровневый этап USB BootROM, без установки Ubuntu на хост. Я не тестировал этот этап на Windows или macOS.

Используя пакет Kamakiri для sheldon/sheldonp, указанный в руководстве по разблокировке, процесс был следующим:

  1. Подготовить Python, PySerial, PyUSB, ADB, Fastboot и USB-среду, необходимые для Kamakiri.
  2. Запустить bootrom-step.sh и подключить выключенный Fire TV по USB.
  3. Дождаться завершения этапа BootROM и перехода устройства в модифицированную среду fastboot.
  4. Запустить fastboot-step.sh для завершения рабочего процесса разблокировки.
  5. Перезагрузить и убедиться, что ожидаемый разблокированный путь загрузки доступен.

Kamakiri определил устройство как sheldonp, завершил понижение версии RPMB, прошил необходимые компоненты TZ/LK цепочки, внедрил microloader и принудительно перевёл устройство в режим взломанного fastboot.

Kamakiri завершает этап BootROM на sheldonp

Хеши архивов и версия Ubuntu записаны выше. Читателям следует использовать связанные руководства оригинальных авторов для инструкций, специфичных для конкретной версии, а не предполагать, что эти высокоуровневые шаги применимы к другой сборке.

5. Проверка результата

Я рассматривал следующие пункты как отдельные вехи и зафиксировал доказательства для каждой из них:

Режим взломанного fastboot, отображённый после этапа Kamakiri BootROM

Первый запуск TWRP на Fire TV Stick

6. Сохранение Fire OS и настройка состояния после разблокировки

Моей целью было сохранить стоковую Fire OS, а не сразу устанавливать кастомную прошивку. В TWRP я избегал стирания данных или замены операционной системы, затем перезагрузился в существующую установку Fire OS. TWRP и разблокированный путь загрузки остались доступными, а стоковая пользовательская среда была сохранена.

После возврата в Fire OS я оставил OTA-обновления отключёнными, чтобы Amazon не мог незаметно перевести устройство на сборку, которая изменила бы эксплойт или модифицировала восстановленную цепочку загрузки. Я также отключил компонент защиты системных приложений Amazon, обычно называемый в инструментах сообщества Fire TV как ARCUS. Это изменяет поведение блокировки приложений на уровне ОС Amazon; это не обходит Widevine, проверки подписки или лицензионные ограничения, реализованные внутри отдельных приложений.

Fire OS, работающая после разблокировки с доступными параметрами разработчика

Необязательные дальнейшие шаги

Разблокированный загрузчик и TWRP также позволяют устанавливать совместимое кастомное программное обеспечение. Один из вариантов сообщества для этого семейства устройств — LineageOS 20 на базе Android 13. Другие совместимые прошивки, рабочие процессы восстановления или конфигурации постоянного root также могут быть возможны.

Эти альтернативы не были частью данного воспроизведения. Их следует рассматривать как отдельные процедуры с собственными соображениями относительно прошивки, TZ, стирания данных, DRM, памяти и восстановления.

Наблюдения

  • Проводное USB-подключение ADB предпочтительнее, поскольку повторные попытки эксплуатации могут перезагрузить цель и прервать беспроводной ADB.
  • Надёжность эксплойта зависит от цели и сборки. Повторная попытка или перезагрузка не является доказательством того, что устройство не поддерживается, но смещения и совместимость сборки всё равно должны быть проверены.
  • Этап временного root и этап Kamakiri решают разные задачи и должны документироваться независимо.
  • Ожидаемое неработающее состояние после понижения версии имеет смысл только тогда, когда инструмент понижения сообщает об успехе и соблюдается точно поддерживаемый рабочий процесс.
  • Успешное завершение скрипта — более слабое доказательство, чем зафиксированное состояние устройства, идентичность root и проверка fastboot/recovery.
  • Разблокировка загрузчика не требовала замены Fire OS; сохранение стоковой Fire OS было осознанным выбором после разблокировки.
  • Отключение ARCUS влияет на слой блокировки приложений Amazon, тогда как DRM приложений и лицензии на контент остаются отдельными вопросами.

Влияние на безопасность

На уязвимой и поддерживаемой сборке Fire OS код, уже выполняющийся локально на устройстве, может эксплуатировать уязвимость ядра для получения временного root-контекста. В этой лаборатории такой доступ расширил поверхность атаки за пределы работающей операционной системы: он позволил понизить версию прошивки, что вернуло состояние цепочки загрузки, пригодное для использования более старым эксплойтом BootROM.

Эта цепочка иллюстрирует, почему безопасность устройства зависит не только от исправления одного слоя. Повышение привилегий в ядре может стать мостом к низкоуровневой персистентности или компрометации цепочки загрузки, когда привилегированное программное обеспечение может изменять критичное для безопасности состояние прошивки.

Структура репозитория

root@kitploit:~
.
├── README.md              # Case study and methodology
├── LICENSE                # CC BY 4.0 for original documentation and media
├── images/
│   ├── README.md          # Evidence index and redaction guidance
│   └── evidence/          # Sanitized screenshots and photographs
└── references/
    └── README.md          # Source ledger and artifact guidance

Этот репозиторий не распространяет сторонние ZIP-архивы. Получите их из оригинальных руководств на XDA, ознакомьтесь с применимыми к ним условиями и сравните их хеши со значениями, записанными выше.

Благодарности

  • NebuSec / CyberMeowfia — обнаружение и оригинальное исследование IonStack/GhostLock и реализация эксплойта для CVE-2026-43499.
  • R0rt1z2 — адаптация для Fire OS, ветка GhostLock 4.4 и руководство по временному root и понижению версии для sheldon/sheldonp.
  • IonStackQuest3 — первый публичный порт GhostLock для ядер Linux 5.10, упомянутый в проекте Fire OS.
  • Участники Amonet/Kamakiri, включая xyz, k4y0z, Rortiz2, t0x1cSH и тестировщиков, упомянутых в оригинальной теме разблокировки — работа над BootROM, fastboot, восстановлением и разблокировкой конкретных устройств.

Мой вклад — независимое воспроизведение, запись выполнения для конкретного устройства, анализ того, как связаны этапы, и оригинальные доказательства, опубликованные в этом репозитории.

Ссылки

Поддерживаемый реестр источников находится в references/README.md. Основные источники включают:

  • Запись CVE-2026-43499
  • NebuSec: запись об уязвимости GhostLock
  • NebuSec: IonStack Part III — эксплуатация Android
  • CyberMeowfia: исходный код IonStack/CVE-2026-43499
  • R0rt1z2/GhostLock, ветка 4.4
  • XDA: временный root и понижение версии preloader для sheldon/sheldonp
  • Исходный код Amonet/Kamakiri
  • XDA: руководство по разблокировке загрузчика, TWRP и восстановлению для sheldon/sheldonp
  • Исправление ядра Linux для remove_waiter()

Уведомление об ответственном использовании

Этот материал предоставлен для образовательного использования и авторизованных исследований безопасности на оборудовании, которым вы владеете или которое вам явно разрешено тестировать. Он предоставляется без каких-либо гарантий. Вы несёте ответственность за соблюдение законодательства, потерю данных, нарушение работы сервисов и повреждение оборудования в результате ваших действий.

Лицензия

Оригинальный текст и изображения, созданные для этого репозитория, лицензированы под Creative Commons Attribution 4.0 International License.

Сторонние инструменты, код эксплойтов, прошивки, цитаты, скриншоты, товарные знаки и упомянутые материалы остаются предметом их соответствующего авторства и лицензий. Включение ссылки или упоминания не перелицензирует этот материал под CC BY 4.0.

Скачать инструмент
ПолеЦель воспроизведения
УстройствоAmazon Fire TV Stick 3-го поколения
МодельAFTSSS
Кодовое имяsheldonp
Операционная системаFire OS 7.7.1.6 / сборка PS7716.5666N
Инкрементальная версия0036005356164
База AndroidAndroid 9
Ядро4.4.162+
Хост, использованный для этапа BootROMUbuntu 26.04.1 LTS, загруженный как live USB-сессия
Android platform tools37.0.1
Реализация временного rootR0rt1z2/GhostLock 1.1.0, ветка 4.4
Реализация BootROMkamakiri-sheldon-1.0
РезультатВременный root, понижение версии preloader, разблокированный загрузчик, TWRP и сохранённая Fire OS
АрхивИсточникВерсияSHA-256
ghostlock-sheldon-v1.1.0.zipРуководство по временному root и понижению версии на XDAGhostLock 1.1.08D541F7DF58487AF6D6D45D778482D3455A71F62E32651751CFE0B2DDFC6554F
kamakiri-sheldon-1.0.zipРуководство по разблокировке загрузчика на XDAKamakiri Sheldon 1.01B07161D9F894935E5918A9B8F9A230F67B9487E9863C242E758338E8C6C5784
ВехаСигнал проверкиДоказательство
Базовая линияADB shell до эксплуатации01-adb-shell-baseline.png
Эксплойт ядраRoot shell и uid=002-ghostlock-root-and-ota.png
Трассировка эксплойтаПримитив GhostLock и лог патча учётных данных03-ghostlock-exploit-trace.png
Понижение версииУязвимый preloader успешно записан04-preloader-downgrade.png
BootROMKamakiri завершил свой первый этап05-kamakiri-bootrom.png
РазблокировкаВзломанный fastboot отображён на подключённом экране06-hacked-fastboot.png
ВосстановлениеTWRP успешно загружен07-twrp-first-boot.jpg
Сохранена стоковая ОСFire OS загружена с доступными параметрами разработчика08-fireos-developer-options.jpg