Creeeeger/CVE-2024-56426
GitHub: Creeeeger/CVE-2024-56426
针对三星 Exynos 设备 CVE-2024-56426 漏洞的概念验证工具,用于绕过 Bootloader 锁定并执行底层 Payload 以获取系统控制权。
Stars: 3 | Forks: 0
# Split 脚本
```
python3 exploit/split.py bootLoaderFiles/originalSboot/sboot.bin -o exploit/extra/images
```
## 安装命令
```
sudo apt-get update
sudo apt-get install -y gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu
```
## Payload 构建(外部)
构建现有的 payload(`loader.bin`、`loader_usb.bin`)并将其写入 `exploit/extra/payloads`:
```
cd exploit
./build_payloads.sh
```
## Exploit 模式
1. 运行下载模式
2. 使用 merge.py 脚本创建一个 sboot.bin
3. 你现在处于 Crecker 模式 —— 这是一个 Odin 模式,通俗地说它不在乎你发送什么
4. 通过 Odin、Heimdall 等工具发送你新的 sboot.bin
5. 运行 UFS payload 并享受你的生活。
6. 也许可以安装 CreckerRom,这样你就可以在开启 Strong Integrity 的设备上使用 One UI 7。
7. 如果你愿意,你也可以锁定 Bootloader
```
cd exploit
python3 exploit.py --ufs # UFS path (default payload: loader.bin)
python3 exploit.py --download # USB path + BL chain (default payload: loader_usb.bin)
```
## 启动流程
```
-> BootROM
-> Full handoff to BL1
-> Full handoff to EPBL
-> EPBL sets up minimal SMC handler
-> EPBL Loads BL2
-> partial handoff to BL2
-> BL2 uses EPBL to load LK (which won't immediately execute)
-> BL2 uses EPBL to load EL3 Monitor
-> BL2 will decrypt EL3 Monitor
-> Full handoff to EL3 Monitor
-> EL3 Monitor initialises and sets up extended SMC handler
-> Jump to LK
-> LK calls into SMC handler (EL3 Monitor) to load trustzone parts
-> Continue boot to ODIN / or whatever we set
```
## 上游归属
本仓库中的 Python 恢复工具部分内容改编自
[halal-beef/hubble](https://github.com/halal-beef/hubble)。
该上游项目根据 GNU GPL v2.0 发布,本仓库为兼容性保留了 GPL-2.0 许可证。请参阅 [LICENSE](LICENSE) 和
[NOTICE.md](NOTICE.md)。
## 在 Mac 上安装此工具:
```
brew tap messense/macos-cross-toolchains
brew install aarch64-unknown-linux-gnu
```
## 致谢
感谢这些团队和个人提供 exploit 及 exploit 代码,以及他们为使本项目成为可能所付出的努力:
- [Chimera Tool](https://chimeratool.com)
```最早于 2021-2022 年左右发现该 exploit。他们为大量设备提供了市场上最先进的 Exynos 服务功能,而这正是归功于该特定 exploit 以及许多其他 exploit。```
- [CVE-2024-56426](https://semiconductor.samsung.com/support/quality-support/product-security-updates/cve-2024-56426/)
```据我们所知,这是 houston 所依据的 CVE。```
- Christopher Wade ```向 Samsung 报告了 CVE-2024-56426```
- [kethily-daniel](https://github.com/kethily-daniel)
```让我访问该工具以进行 USB 数据包跟踪,从而提取样本。```
- [BotchedRPR](https://github.com/BotchedRPR) ```协助了初期研究和 carte2 的创建。```
- [VDavid003](https://github.com/VDavid003)
```通过数据包转储协助我逆向工程 PoC,并在其设备上进行了个人测试。```
- [halal-beef](https://github.com/halal-beef) / [hubble](https://github.com/halal-beef/hubble)
```研究期间的初始 USB 数据包转储和 PoC 分析,以及 exploit 脚本使用的后端代码,还有 split 和 merge 脚本使用的 SoC 布局```
- [R0rt1z2](https://github.com/R0rt1z2)
```巨大的帮助,甚至在 payload 创建方面,有些内容是基于他的项目 kaeru。```
- [AntiEngineer](https://github.com/AntiEngineer)
```巨大的帮助,提供了关于 ARM 的知识和提示,并且是一个伟大的朋友。```
- AA ```漏洞灵感,在 Chimera 之外的首次使用。```
标签:Android, Bootloader, CreckerRom, Cutter, CVE-2024-56426, DSL, EL3, Go语言工具, Heimdall, Odin模式, PoC, Python, SBoot, TrustZone, UFS, Web报告查看器, 三星, 交叉编译, 固件, 威胁模拟, 提权, 无后门, 暴力破解, 越狱, 逆向工具