这是针对 Amazon Fire Max 11(sunstone)和 Fire TV Stick 4K Max 第二代 / 2023(karat)的内核 root 漏洞利用,改编自 CyberMeowfia 中的 CVE-2026-43499。
支持两款设备,均运行 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。
该脚本会重启设备、运行漏洞利用,并在完成后将你带入一个 root shell。如果失败,它将自动重试最多 8 次。
如果成功,你会看到类似如下的 root shell 提示符:
root@sunstone:/ #
在较新版本的 Fire OS 上,Amazon 添加了 KASLR,因此可能需要几分钟才能完全运行。请耐心等待。一旦启动完成,在下次重启前,su 可从任何 adb shell 中使用。
还有一个绑定 shell 位于 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 打开第二个原始 root shell。
LM 通常以系统用户身份启动自己的进程,但如果端口已被占用,它会复用该端口,因此如果漏洞利用程序以 root shell 占用着 9060,那么 LM 将改为以 root 身份运行。
请先运行漏洞利用程序以占用该端口,然后(重新)启动 LM。
一旦 root 成功,OTA 更新会自动被禁用。一次 OTA 就可能将你更新到此处不支持、或已修复该漏洞的构建版本。
平板电脑和 Fire TV Stick 的具体软件包有所不同,漏洞利用程序会根据设备选择正确的集合。请在输出中查找 OTA: pm ... ok 行以进行确认。
如果任何步骤报告 not applied,请从 root shell 手动运行。
在 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 shell 对相同的软件包执行 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 |