Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-43499-firetv-sheldonp-writeup — Amazon Fire TV Stick 第3世代(sheldonp)における CVE-2026-43499 の悪用に関するセキュリティリサーチの解説記事。一時的な 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

Amazon Fire TV Stick 第3世代(sheldonp)における CVE-2026-43499 の悪用に関するセキュリティリサーチの解説記事。一時的な root 取得からブートローダーアンロックまでを扱う。

リポジトリを見る
11101ヶ月前未レビュー

Amazon Fire TV Stick 第3世代(sheldonp)における CVE-2026-43499

Linux カーネルの権限昇格を preloader のダウングレードとブートローダーのアンロックへと連鎖させる。

License: MIT

概要

このリポジトリは、Amazon Fire TV Stick 第3世代(sheldonp)上で CVE-2026-43499 のエクスプロイトチェーンを、許可を得て再現した記録をまとめたものです。このチェーンでは、一時的なカーネル root を用いて制御された preloader のダウングレードを実行し、その後、既存の Kamakiri BootROM ワークフローを用いてアンロック済みの fastboot に到達し、ブートローダーのアンロックを完了しました。

これは再現およびデバイス固有のケーススタディです。私は CVE-2026-43499 を発見したわけでも、元の IonStack/GhostLock エクスプロイトを作成したわけでも、Kamakiri を開発したわけでもありません。上流の研究者および開発者へのクレジットは以下に記載しています。

[!IMPORTANT] この記事は技術的な記録であり、汎用的な root 化ガイドではありません。ビルドの互換性が重要であり、一時的な root は永続的な root ではありません。また、Preloader、LK、TEE、あるいは dm-verity で保護されたパーティションに関わるミスは、デバイスを恒久的に文鎮化させる可能性があります。

再現記録

エンドツーエンドのチェーンは 2026年9月12日に完了しました。このリポジトリには、テストしたデバイスとソフトウェアのバージョン、使用した正確なアーカイブ、それらの SHA-256 ハッシュ、およびプロセス中に取得したオリジナルの証拠が記録されています。

スコープ

項目再現対象
デバイスAmazon Fire TV Stick 第3世代
モデルAFTSSS
コードネームsheldonp
オペレーティングシステムFire OS 7.7.1.6 / ビルド PS7716.5666N
インクリメンタル0036005356164
Android ベースAndroid 9
カーネル4.4.162+
BootROM ステージに使用したホストUbuntu 26.04.1 LTS、ライブ USB セッションとして起動
Android platform tools37.0.1
一時 root 実装R0rt1z2/GhostLock 1.1.0、4.4 ブランチ
BootROM 実装kamakiri-sheldon-1.0
結果一時 root、preloader のダウングレード、ブートローダーのアンロック、TWRP、および Fire OS の保持

スコープ外: 脆弱性の発見、新しいエクスプロイトの実装、リモートからのエクスプロイト、永続的な root、またはテストした sheldonp 実機以外のデバイスのサポート。この再現ではカスタム ROM はインストールしていません。

再現用アーカイブ

以下は、この再現で使用した正確な ZIP アーカイブです。アーカイブはこのリポジトリでは再配布されません。SHA-256 ハッシュを記録しているため、独立に入手したコピーをこのケーススタディで使用したファイルと比較できます。

アーカイブ入手元バージョンSHA-256
ghostlock-sheldon-v1.1.0.zipXDA の一時 root およびダウングレードガイドGhostLock 1.1.08D541F7DF58487AF6D6D45D778482D3455A71F62E32651751CFE0B2DDFC6554F
kamakiri-sheldon-1.0.zipXDA のブートローダーアンロックガイドKamakiri Sheldon 1.01B07161D9F894935E5918A9B8F9A230F67B9487E9863C242E758338E8C6C5784

これらのハッシュはこのケーススタディで使用したコピーを識別するものです。読者はダウンロードしたファイルを元の上流ソースと照合し、適用されるサードパーティライセンスを確認することをお勧めします。

技術的背景

CVE-2026-43499 は GhostLock とも呼ばれ、Linux カーネルの優先度継承 futex/rtmutex パスにおける use-after-free です。プロキシロックのロールバック中に、remove_waiter() が waiter->task に格納されたタスクではなく current を操作していました。その結果、実際のウェイターは、解放済みのカーネルスタックフレーム内の rt_mutex_waiter を pi_blocked_on が依然として参照したまま、ユーザースペースへ戻る可能性がありました。

元の IonStack の研究は、このダングリングスタック参照をローカル権限昇格プリミティブへと変換します。R0rt1z2 はこの手法を、4.4 カーネル上で Fire OS 7 を実行する Fire TV Stick 第3世代および Fire TV Stick Lite(sheldonp/sheldon)向けに適応させました。

このケーススタディにおける重要な違いは、CVE-2026-43499 がブートローダーを直接アンロックするわけではないという点です。これは一時的なカーネルレベルのアクセスを提供します。この短時間のアクセスにより、古い Kamakiri BootROM チェーンを実行する前に必要となる、制御された preloader のダウングレードを実行することが可能になります。

エクスプロイトチェーン

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]

このチェーンは2つの独立したセキュリティ境界を越えます:

  1. カーネル境界: 非特権のローカルプロセスがGhostLockを通じて一時的なrootコンテキストを取得します。
  2. ブートチェーン境界: 一時的なrootが、互換性のあるpreloaderを復元することで、既知のBootROMベースのアンロック経路に向けてデバイスを準備します。

手法

1. ベースラインの確立

デバイスを変更する前に、ハードウェアのコードネームを特定し、ADB経由でFire OS、ビルド、ブートローダー、カーネルのバージョンを記録しました。

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 シェルのベースライン

2. GhostLock で一時的な root を取得する

ADB デバッグを有効にした状態で USB 経由で Fire TV を接続し、R0rt1z2 の XDA ガイドで公開されている sheldon/sheldonp パッケージである GhostLock 1.1.0 を使用しました。デバイス固有のランチャーは、Fire TV を再起動してクリーンな状態から開始し、エクスプロイトを展開し、必要に応じて再試行します。

エクスプロイトが成功すると、一時的な root 環境が作成されます。スクリプトの完了だけを証拠とせず、ADB シェルからセキュリティコンテキストを検証しました:

adb shell
su
id

ルートコンテキストは一時的なものであり、再起動時に失われます。この挙動は重要です。この段階はダウングレードを可能にするための基盤となるプリミティブであり、最終的な永続化メカニズムやブートローダーのアンロックそのものではありません。

成功した実行では uid=0 が表示され、一時環境のために SELinux が permissive に変更され、一時的な su がマウントされ、ツールが扱う Fire OS の OTA パッケージが無効化されました。

uid 0 と OTA パッケージの変更を示す GhostLock の root シェル

GhostLock エクスプロイトの完全なトレースも裏付け証拠として保持されています。

3. preloader をダウングレードする

一時的な root が利用可能になったため、ファームウェアパーティションを手動で書き込むのではなく、パッケージ専用のダウングレードワークフローを使用しました。これにより、既存の Kamakiri パスと互換性のある preloader が復元されました。

ダウングレード後、Fire TV は意図的に Fire OS での起動を停止しました。この特定のワークフローでは、この起動しない状態はライブカーネル段階と USB BootROM 段階の間の想定された引き継ぎです。これは、任意の失敗したフラッシュが復旧可能であることの証明と混同してはなりません。

[!CAUTION] Preloader を絶対に消去しないでください。LK、TEE、Preloader、boot、recovery、system、vendor、その他の保護されたパーティションへの書き込みを即興で行わないでください。上流のガイドは、重要なファームウェアへの損傷が恒久的なハードブリックを引き起こす可能性があると警告しています。なぜなら、動作する復旧パスが残らない可能性があるからです。

脆弱な preloader への書き込み成功を報告する GhostLock

4. Kamakiri BootROM チェーンを実行する

このデバイスで使用した Kamakiri ワークフローは Linux 向けにサポートおよび文書化されていました。そのため、Ubuntu Live セッションを起動し、ホストに Ubuntu をインストールすることなく、低レベルの USB BootROM 段階を含む完全なアンロックワークフローをそこで実行しました。この段階は Windows や macOS ではテストしていません。

アンロックガイドで参照されている sheldon/sheldonp Kamakiri パッケージを使用した手順は次のとおりです。

  1. Kamakiri に必要な Python、PySerial、PyUSB、ADB、Fastboot、および USB 環境を準備します。
  2. bootrom-step.sh を起動し、電源オフの Fire TV を USB で接続します。
  3. BootROM 段階を完了させ、デバイスを変更済みの fastboot 環境へ移行させます。
  4. fastboot-step.sh を実行してアンロックワークフローを完了します。
  5. 再起動し、期待されるアンロック済みの起動パスが利用可能であることを確認します。

Kamakiri はこのユニットを sheldonp として検出し、RPMB ダウングレードを完了し、チェーンに必要な TZ/LK コンポーネントをフラッシュし、microloader を注入し、デバイスをハック済みの fastboot モードへ強制移行しました。

sheldonp で BootROM 段階を完了する Kamakiri

アーカイブのハッシュと Ubuntu のリリースは上記に記録されています。読者は、これらの高レベルの手順が別のビルドにも適用されると仮定するのではなく、バージョン固有の手順についてはリンクされた上流のガイドを使用すべきです。

5. 結果を検証する

以下をそれぞれ別個のマイルストーンとして扱い、それぞれの証拠を取得しました。

ツールをダウンロード