
カーネルルートエクスプロイト(CVE-2026-43499)— 一部の5.Xデバイス向け(主にAmazon)
これは、Amazon Fire Max 11(sunstone)および Fire TV Stick 4K Max 2nd Gen / 2023(karat)向けのカーネルルート権限取得エクスプロイトで、CyberMeowfia の CVE-2026-43499 を基に移植したものです。
対応デバイスは2種類で、いずれも Fire OS 8 です。それぞれに専用のビルドターゲットがあります。
sunstone)| Fire OS | ビルド | インクリメンタル | カーネル |
|---|---|---|---|
| 8.3.3.8 | RS8338.3339N | 0030132734852 | -ge7a6aa0ea53f |
| 8.3.3.7 | RS8337.3186N | 0029461607044 | -gee3b4a65f51d |
| 8.3.3.6 | RS8336.3103N | 0028656279428 | -gda010c50409f |
| 8.3.3.5 | RS8335.2972N | 0027716721796 | -g7ec28efd738a |
| 8.3.3.3 | RS8333.2734N | 0026441592452 | -g76402f9d634d |
| 8.3.3.2 / 8.3.3.1 / 8.3.3.0 / 8.3.2.7 | RS8332.3115N | 0025837710212 | -gf66ba269681b |
| 8.3.2.4 | RS8324.2314N | 0023153150596 | -g82c06325e9f8 |
| 8.3.2.2 | RS8322.2053N | 0022045787524 | -g89f110867b4a |
| 8.3.2.1 | RS8321.1924N | 0021911536772 | -g096b58f0a5d7 |
| 8.3.2.0 | RS8320.1807N | 0021777289092 | -g66ce35ca5a96 |
| 8.3.1.9 | RS8319.1664N | 0021508817028 | -gec87eda1378d |
karat)GNU Make と Android NDK r29 が必要です。
make # Fire Max 11 (sunstone), the default
make PROJECT=karat # Fire TV Stick 4K Max 2nd Gen
または、配布用 zip をビルドします。これにより必要な処理はすべて自動で行われます。
./makedist.sh # sunstone
PROJECT=karat ./makedist.sh # karat
結果は dist/ghostlock-<date>.zip に書き出されます。
./root.sh
Windows では root.bat を実行してください。
このスクリプトはデバイスを再起動し、エクスプロイトを実行して、完了後にルートシェルを開きます。失敗した場合は、最大8回まで自動的に再試行します。
成功すると、次のようなルートシェルのプロンプトが表示されます。
root@sunstone:/ #
新しいバージョンの Fire OS では Amazon が KASLR を追加しているため、完全に実行が完了するまで数分かかる場合があります。辛抱強くお待ちください。起動後は、次回の再起動まで任意の adb shell から su を使用できます。
また、127.0.0.1:9999 にバインドシェルがあり、root が有効な間は開いたままになります。最も簡単な方法は、デバイス上で nc を実行することです。
adb shell -t "nc 127.0.0.1 9999"
または、ポートを転送してホストから接続します。
adb forward tcp:9999 tcp:9999
stty raw -echo; nc 127.0.0.1 9999; stty sane
[!CAUTION] root を取得している間も、デバイスでは dm-verity が使用されているため、system/vendor/etc パーティションを変更すると文鎮化(ブリック)します。
LK、TEE、Preloader などの重要なパーティションを破壊した場合も文鎮化します。このエクスプロイトの使用は自己責任で行ってください。
Fire TV Stick では、Launcher Manager 用に、127.0.0.1:9060 で2つ目の raw root シェルが開かれます。
LM は通常、システムユーザーとして自身を起動しますが、ポートがすでに開いている場合はそのポートを再利用するため、エクスプロイトが root シェルで 9060 を保持している場合は、root として動作するはずです。
エクスプロイトを先に実行してポートを確保してから、LM を(再)起動してください。
root の取得に成功すると、OTA アップデートは自動的に無効化されます。1回の OTA で、このエクスプロイトが対応していないビルドや、エクスプロイトが修正されたビルドに移行する可能性があります。
タブレットと Fire TV Stick では正確なパッケージが異なるため、エクスプロイトはデバイスに基づいて適切なセットを選択します。出力内の OTA: pm ... ok 行を探して確認してください。
いずれかの手順で not applied と報告された場合は、root シェルから自分で実行してください。
Fire Max 11(sunstone)の場合:
pm disable com.amazon.device.software.ota
pm disable com.amazon.kindle.otter.oobe.forced.ota
sync
Fire TV Stick(karat)の場合:
pm disable com.amazon.device.software.ota
pm clear com.amazon.device.software.ota
pm disable com.amazon.device.software.ota.override
pm disable-user com.amazon.sneakpeek
pm disable com.amazon.client.metrics
sync
これは再起動後も維持されますが、ファクトリーリセット後は維持されません。再び有効にするには、root シェルから同じパッケージに対して pm enable(または pm enable-user)を実行してください。
| Fire OS | ビルド | インクリメンタル | カーネル |
|---|
| 8.1.8.0 | RS8180.3739N | 0032280320768 | -g76bdd754c12c |
| 8.1.8.0 | RS8180.3729N | 0032280318208 | -g76bdd754c12c |
| 8.1.7.4 | RS8174.3648N | 0031877644288 | -ge1cb3cb5ad98 |
| 8.1.7.4 | RS8174.3641N | 0031877642496 | -ge1cb3cb5ad98 |
| 8.1.6.9 | RS8169.3556N | 0031139423232 | -ge1cb3cb5ad98 |
| 8.1.6.6 | RS8166.3482N | 0030736751236 | -gff609fc8f789 |
| 8.1.6.0 | RS8160.3380N | 0030501844100 | -ga8c852b26125 |
| 8.1.6.0 | RS8160.3372N | 0030501842052 | -ga8c852b26125 |
| 8.1.5.8 | RS8158.4105N | 0030468475268 | -gb7ca23cc70e6 |
| 8.1.5.5 | RS8155.3474N | 0029998551684 | -g05616ee8f7f7 |
| 8.1.5.3 | RS8153.3202N | 0029528720004 | -g05616ee8f7f7 |
| 8.1.4.9 | RS8149.3133N | 0028723395972 | -gb0c9d6e017fb |
| 8.1.4.5 | RS8145.3070N | 0028186508932 | -gabbd3a8e8dee |