搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

Gabriel2392/SVE-2026-3546

安全

针对三星 S-LK 的未签名代码加载概念验证,在 s5e8825 平台熔断 Secure Boot 密钥并刷入重签引导文件。

111
13
Rust
创建于 3 天前

项目介绍

这是一个针对三星 S-LK(Secure Boot)的未签名代码加载研究性 PoC。它先对 bootloader 和 PIT 文件重新签名,再构建自定义 loader,最后在 s5e8825 平台上熔断 Secure Boot KEY2 并刷入重签后的 bootloader。仓库中的 AUTH 演示 GIF 展示了启动流程 演示。

按 README 的说法,厂商的 KEY2 槽位会被熔断,设备随后信任重签的镜像。目标读者是研究三星启动链的安全研究员和逆向工程师,不是普通用户。作者明确表示目前只支持 s5e8825。

快速使用

准备 Python 3、clang、aarch64-linux-gnu 的 binutils,以及手机上的 libusb 访问权限 依赖说明。先安装 Python 依赖并构建 Android 重签工具:

python3 -m pip install -r requirements.txt
cargo build --release --manifest-path android-resigner/Cargo.toml

签名工具自身的使用说明见 android-resigner/README.md。然后按文档顺序执行四个阶段:

./sign_bl.py BL.tar.md5 device.pit
./resolve.py BL_RESIGNED.tar.md5
./build_loader.sh BL_RESIGNED.tar.md5 device_RESIGNED.pit
./flash_and_fuse.py

第一步输出 BL_RESIGNED.tar.md5 和 device_RESIGNED.pit 签名步骤;第三步输出 loader.bin、loader.elf 和 loader/bundle.bin 构建 loader;最后一步刷入并熔断 运行步骤。BL.tar.md5、device.pit 和手机标识都应视为用户自行提供的值。

使用约束

  • 平台目前仅限 s5e8825;解析偏移量的步骤只覆盖该平台,其他平台需自行处理 偏移步骤。
  • 最后一步会熔断 Secure Boot KEY2,这是单向的硬件改动。熔断后刷入重签 bootloader 会把设备绑定到这些镜像,仓库没有说明恢复途径。
  • 仓库元数据中没有声明许可证。
  • README 声明仅供研究用途,设备损坏由使用者自行承担 免责声明。
  • 仓库没有说明支持的固件版本、具体机型或回滚流程,执行前需要自行确认目标环境。

HotRepo 点评

该项目于 2026-11-05 出现在 HotRepo 新项目榜的 Rust 语言列表中,在 UTC 20:45 开始的约两小时增长窗口内新增 6 Star、1 Fork,最后一次观测为 106 Star。没有全部语言日榜名次记录,因此这些数据只支持该短窗口内的事实,不足以判断趋势。对于一个会永久熔断密钥、且未声明许可证的启动链安全 PoC 来说,这个关注度更像是对该技术本身的兴趣,而不是安全可用或可复现的证明。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。