Skip to content
This repository was archived by the owner on Oct 3, 2026. It is now read-only.

KSuRoot 3.0 —— 载荷构建

Choose a tag to compare

@hmascs hmascs released this 10 Sep 17:41
· 36 commits to main since this release

⚠️ 本版已被 v3.0.1 取代。
下面「内置动态库」一节写的是版本与打包被 strip 两层原因,但那两层只是隐患 ——
真正卡住安装的那一步是第三层:原生库属主是 system,应用执行 Os.chmod 必回 EACCES,
安装链会在打印完「使用内置动态库:libbs.so」后立刻断掉([-] chmod failed: EACCES)。
本版仍带该问题,请直接使用 v3.0.1。


KSuRoot 3.0

基于 CVE-2026-43499(GhostLock) 的一键 KernelSU 提权工具 · 本版是「载荷构建」大版本

⚠️ 这是真实的内核提权工具。竞态未命中、偏移错误都可能触发 oops/panic,轻则进程被杀,重则内核卡死或设备重启。请只在你自己拥有、且愿意承担风险的设备上使用,使用前先备份数据。


一、这个版本最重要的三件事

1. 内置动态库终于「能用」了 —— 而且现在能自证

之前「内置动态库不可用」其实是两层原因叠在一起:

层 问题 本版处理
版本 内置的是上游 release v1.3.0 的 preload.so 换成 v1.0.0(162328 字节,SHA-256 87bf839f…b861)—— 提权速度稍慢但稳
打包 AGP 默认会 strip jniLibs 里的 .so:实测 libbs.so 被削成 142848 字节,执行载荷的 helper 也被削 用 keepDebugSymbols 逐个保住,逐字节保留原件

「打包被 strip」这层特别隐蔽:版本号看着是对的,但跑起来的其实是一份被二次加工过的二进制。现在装完可以自己核对 —— 从 /data/app 里把 base.apk 抠出来:

unzip -p base.apk lib/arm64-v8a/libbs.so | sha256sum
# 87bf839fc8524ed25831a22166ebc6cef898e7ddc77ce77736add5ca49b78b61

2. 新增「载荷构建」页 —— 换机型不用再重新编译

把这条链路整个搬到手机上:

本机 boot.img ──► 内核符号表(kallsyms) ──► 这条链需要的偏移 ──► 打好补丁的动态库
  • 点「开始构建」会先问用哪种方案(从下往上弹出):
    1. 通用方案(推荐) —— IonStack 上游分支,不含厂商适配,适用于大部分 GKI 6.6+ 设备
    2. vivo / iQOO(vr.ko 反 su 绕过) —— 额外做厂商反 root 绕过,蓝厂机型必须选这项
  • 产物自动做两件事,不用你再点:写进 /storage/emulated/0/Download/(走 MediaStore,不需要任何存储权限),并写入「自定义动态库」且把载荷源切过去
  • 界面上直接摊开「打的是哪一份库」:文件名 / 大小 / SHA-256 / 来源版本 —— 这条信息不该藏在代码里
  • 全程离线,构建日志实时上屏;算法是独立的纯 Kotlin 模块(com.kernelpack),原地改写常量、不增删一个字节,改完还会自己重扫一遍自证(旧值残留必须为 0)

通用方案的载荷是本项目真编译出来的:用原生 clang 交叉编译 IonStack 的 CVE-2026-43499/exploit(PROJECT=blazer-CP2A.260605.012),并用真机 boot.img 验证过补丁链 —— 一次构建会把基线里的 13 项偏移改写成你机器的实际值。

3. 免 ADB 的边界说清楚了

GhostLock 打的是 rt_mutex + pipe_buffer 这条链:

内核 免 ADB 提权
6.6 及以上(6.6 / 6.12 两系已验证,6.7~6.11 同理) ✅ 直接可用,不需要电脑、不需要 ADB
低于 6.6 ❌ 只能走 Shizuku(ADB)授权那条路

设备信息卡新增内核版本行,并直接给出判定(6.6.89 · 支持 GhostLock 免 ADB)。内核低于 6.6 时按「安装」会先弹提示:免 ADB 走不通、请在设置中打开 Shizuku 授权;确认按钮带 3 秒倒计时(期间只有取消可点),避免手快直接确认。


二、界面与体验

  • 运行记录不再判成败:蓝厂机型上「跑完了但没拿到 root」和「真的跑挂了」根本分不开,判定既不准也没意义。现在只保留「进行中 / 已记录」,图标与配色一律中性。是否真的装上,看主页 KernelSU 状态 —— 那是实测出来的,不是推断的。
  • 日志一键复制 + 保存到指定目录:安装页的实时日志、运行记录详情,两处都有这两个动作。出问题时直接复制贴群里/issue。
  • 关于页改为「关于 KSUroot」,补上本仓库地址与简介,版本号统一为 3.0。
  • 上一轮做的液态玻璃 UI(悬浮玻璃底栏 + 滑块折射、MIUIX 卡片分组)与内置库路由修复(此前用内置库点安装会被「定位到官方在线源」,因为判断里漏了载荷来源这一维)一并包含在本版。

三、升级与使用建议

  1. 覆盖安装即可(同签名),版本号 300 / 3.0。
  2. iQOO / vivo → 主页选内置动态库。
  3. 三星 → 主页选官方在线源(按机型与内核版本匹配)。
  4. 其它机型(内核 6.6+)→ 到载荷构建用本机 boot.img 生成载荷,产物会自动进入「自定义动态库」。
  5. minSdk 33(Android 13+),仅 arm64-v8a。

四、致谢与许可

Apache-2.0。仅供安全研究与学习,请仅在自有且受控的设备上使用。