Wtrwx/smt878u-ionstack-poc
GitHub: Wtrwx/smt878u-ionstack-poc
利用 CVE-2026-43499(IonStack / GhostLock)针对 Samsung Galaxy Tab S7 特定固件版本的纯 C 提权漏洞 PoC,实现临时 root 并供安全研究使用。
Stars: 0 | Forks: 1
# smt878u-ionstack-poc
针对 **Samsung Galaxy Tab S7
(SM-T878U / gts7l)** 的纯 C、主机辅助的重新 root 概念验证,利用 **CVE-2026-43499** (IonStack / GhostLock)。
运行时链仅使用原生的 C/ELF 组件。它不需要在 Android 目标上安装
Python、Java、DEX、`app_process` 或 JVM。ADB 用于部署和验证。
## 支持的配置文件
此 POC 被故意设计为在配置文件检查不完全匹配时中止执行:
```
device: gts7l
Android: 13 / SDK 33
fingerprint: samsung/gts7lsqwnc/gts7l:13/TP1A.220624.014/T878USQS8DXE1:user/release-keys
kernel: 4.19.113
build: T878USQS8DXE1
```
不支持的或失败的运行可能会导致设备死机或重启。请保留可用的
恢复途径。
此仓库的范围严格限于上述固件配置文件。它不是一款
通用的 root 工具,未经独立验证,不得在其他
设备上重复使用其偏移量或假设。
## 仅供安全研究
- 仅在您拥有或获得明确授权测试的硬件上使用。
- 成功利用可能会导致设备死机、重启或变砖。
- 此 POC 产生的 root 是临时的,不会修改 AVB、boot image 或
系统分区;重启后即会失效。
## 快速开始
1. 在 macOS 或 Linux 主机上构建(参见[构建](#build))。
2. 安装官方的 Android SDK Platform Tools,并连接已开启 USB 调试的受支持
设备。
3. 确认 ADB 已识别到设备:
```
adb devices -l
```
然后:
```
./build/smt878u-ionstack-reroot -s SERIAL --preflight-only
./build/smt878u-ionstack-reroot -s SERIAL --validate-only
./build/smt878u-ionstack-reroot -s SERIAL
```
在主机报告成功后,验证 root 并打开一个 shell:
```
adb -s SERIAL shell /data/local/tmp/su -c id
adb -s SERIAL shell /data/local/tmp/su
```
当仅连接了一个 ADB 设备时,`-s SERIAL` 是可选的。
## 构建
要求:
- 带有 `clang`、`make` 和 `adb` 的 macOS 或 Linux 主机
- Android NDK(API 35 为默认构建 API)
- 与上述配置文件匹配的 arm64/compat32 目标
```
make -j4
```
需要时覆盖默认发现:
```
make NDK_ROOT=/path/to/android-ndk API=35 -j4
```
所有构建产物均输出在 `build/` 目录下。
### 主机平台
主机控制器支持 macOS arm64、Linux x86_64 和 Windows x86_64。
Android 设备构建产物在不同主机平台上是相同的。
```
# 仅 native host controller
make host
# 带 LLVM-MinGW 的 Windows x86_64 controller
make host-windows \
WINDOWS_CC=/path/to/llvm-mingw/bin/x86_64-w64-mingw32-clang
```
## 运行
从非漏洞利用的配置文件检查开始,然后进行验证,最后执行完整链:
```
./build/smt878u-ionstack-reroot -s SERIAL --preflight-only
./build/smt878u-ionstack-reroot -s SERIAL --validate-only
./build/smt878u-ionstack-reroot -s SERIAL
```
日志默认写入到 `results/YYYY-MM-DD/` 目录下。
### 收集重启 / 崩溃产物
```
./tools/collect_reboot_artifacts.sh SERIAL
```
## 成功运行后使用 `su`
受支持的用户端客户端安装在 `/data/local/tmp/su`。它通过
`/data/local/tmp/temp_su.sock` 连接到临时的 root daemon。请勿将其移动到 `/system/bin` 中,也
不要指望它在重启后依然存在。
## 目录结构
| 路径 | 内容 |
|---|---|
| `src/host/` | 主机端 ADB 编排器 |
| `src/device/` | 设备端 reroot / perf 辅助工具 |
| `src/exploit/` | 源自 IonStack 的漏洞利用链(SM-T878U 偏移量) |
| `src/trigger/` | Chainwalk / 诊断探针 |
| `tools/su_daemon.c` | 临时 `su` daemon 客户端/服务端代码 |
| `tools/collect_reboot_artifacts.sh` | 重启后产物收集器 |
| `build/` | 构建输出(已 gitignore) |
| `results/` | 运行日志(已 gitignore) |
## 出处
此代码树源自公开的 `xpad2-ionstack-poc` 打包布局和
IonStack CVE-2026-43499 源码快照,随后被重新移植到 SM-T878U
(`gts7l` / `T878USQS8DXE1`)。
- 组合项目:`GPL-3.0-or-later`(`LICENSE`)
- `src/exploit/` 和 `tools/su_daemon.c` 下源自 IonStack 的文件:保留 Apache-2.0
出处(`NOTICE`、`licenses/Apache-2.0.txt`)
## 安全报告
请勿在公开的 issue 中包含设备标识符、私有固件镜像、崩溃转储
或其他敏感数据。请参阅 `SECURITY.md`。
## 免责声明
按“原样”提供,不附带任何形式的保证。作者及贡献者
对因使用此材料而产生的滥用、损坏或法律后果
不承担任何责任。
标签:PoC, 安卓安全, 客户端加密, 提权, 暴力破解, 目录枚举, 移动安全