Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
vivo_iqoo_neo_9_root_research_on_CVE-2025-21479 | Kitploit
उपकरण/GitHubGitHub/linux-tools/vivo_iqoo_neo_9_root_research_on_cve-2025-21479
Android SecurityPrivilege EscalationExploitationReverse EngineeringPost-ExploitationMobile SecurityBinary Exploitation
GitHublinux-tools/vivo_iqoo_neo_9_root_research_on_cve-2025-21479

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

vivo_iqoo_neo_9_root_research_on_CVE-2025-21479

रिपॉजिटरी देखें
62119 दिन पहलेअभी तक समीक्षित नहीं
अनुरोधित भाषा में सामग्री उपलब्ध नहीं है। अंग्रेज़ी संस्करण दिखाया जा रहा है।

vivo iQOO Neo 9 Root 研究(CVE-2025-21479)

本项目是基于 CVE-2025-21479(Qualcomm Adreno A7xx GPU 固件逻辑漏洞)的本地提权研究成果, 目标设备为 vivo iQOO Neo 9(Snapdragon 8 Gen 2 / Adreno 740 / A7xx 系列 GPU)。

仓库仅保留可直接使用的二进制产物:利用程序、KernelSU 内核模块、用户态工具、测试内核模块与 APK。

⚠️ 免责声明 本项目仅用于安全研究与学习目的。请仅在自有设备上进行测试。 请勿将相关技术与产物用于任何未授权设备或非法用途,由此产生的一切后果由使用者自行承担。


1. 漏洞背景(CVE-2025-21479)

CVE-2025-21479 是高通 Adreno A7xx 系列 GPU 固件微码中的权限校验逻辑缺陷:

  • 自 A7xx 起,GPU 指令缓冲层级由 4 级扩展为 5 级(新增 IB3),但固件微码仍以 level AND 0x3 判定权限层级;

  • 在最低特权层级(SDS / IB4)执行时 4 AND 3 == 0,被误判为最高权限的 RB 级,从而放行 CP_SMMU_TABLE_UPDATE 等特权指令;

  • 攻击者可借此重配 GPU 一级页表,获得任意物理内存读写原语,进而绕过 KASLR 等防护,篡改内核数据(如 selinux_state)并完成提权。

  • 修复:Qualcomm 2025 年 6 月安全公告(GPU 固件 v675 → v676,掩码由 0x3 改为 0x7)。

  • 影响范围:搭载 Adreno A7xx GPU(如 Snapdragon 8 Gen 1/2)且安全补丁在修复前的设备。

本项目的利用链:GPU 任意物理内存读写 → KASLR 泄露 → SELinux 置为 permissive → 内联 hook 建立 root 守护进程(rootd), 并在此基础上加载 KernelSU(kernelsu-vivo.ko)实现长效 root 管理。


2. 目录结构

root@kitploit:~
├── exploit/                    # 漏洞利用与客户端工具
│   ├── exploit_vivo_neo9       # 主利用程序(自包含,含 rootd 守护进程,每次开机运行一次)
│   ├── exploit_vivo_neo9_ndk   # NDK 重新编译的利用程序(精简版)
│   ├── exploit_vivo_neo9_ndk13 # NDK 13 编译的利用程序(精简版)
│   ├── exploit0_selinux_only   # 仅做 SELinux permissive 的变体(不注入 rootd)
│   └── client/                 # rootd 客户端工具(部署到 /data/local/tmp 使用)
│       ├── rootc               # root 命令客户端:通过文件通道与 rootd 通信执行命令
│       ├── u0                  # 真 root (euid=0) 执行器,绕过 euid=2000 受限接口
│       ├── su                  # su 增强版包装脚本(rootc/u0 双模式,见下文)
│       └── shim.so             # 共享库 shim(配合宿主进程注入执行)
├── kernel-module/
│   └── kernelsu-vivo.ko        # 适配 vivo 内核的 KernelSU 内核模块(作者 weishu)
├── userspace/                  # KernelSU 用户态工具
│   ├── ksud                    # KernelSU 守护进程(负责加载/管理 kernelsu.ko)
│   ├── su_ksu                  # KernelSU 的 su 二进制(由 su_patched.c 编译)
│   ├── asuid                   # 以指定 Android UID 执行命令的工具(asuid <uid> <cmd...>)
│   ├── ksu_feature_probe       # KernelSU 功能探测工具
│   ├── ksu_probe / ksu_probe2  # KernelSU 特性/环境探测工具
│   └── su_test2                # su 功能测试工具
├── test-modules/               # 内核测试/辅助模块(供调试与软重启兼容使用)
│   ├── ksu_testmod.ko          # KernelSU 测试模块
│   ├── proctest.ko / puretest.ko # 进程相关测试模块
│   ├── unpatch/unpatch.ko      # 恢复 cap_bprm_creds_from_file(软重启兼容)
│   └── vrpatch/vrpatch.ko      # 中和 vr.ko 的 root 检测(软重启兼容)
├── KSUOneTap.apk               # 一键注入 APK(内嵌利用程序 + kernelsu-vivo.ko + ksud + su + 部署脚本)
├── resukisu-manager.apk        # KernelSU 管理器 APK(ReSukiSU,用于授权管理)
└── README.md

3. 支持环境

提示:GPU 利用为概率性(依赖内存喷洒),一次失败可重试或重启后重试。


4. 使用方式

方式一:一键(KSUOneTap.apk)

  1. 在目标设备安装并打开 KSUOneTap.apk(需要 Shizuku 环境提供权限);
  2. 应用会通过内置 deploy_onedevice.sh 完成:部署利用程序 → 运行利用获得 root → 加载 kernelsu-vivo.ko → 启动 ksud → 安装 su_ksu;
  3. 安装 resukisu-manager.apk 作为 KernelSU 管理器,进行 root 授权管理。

方式二:手动流程

以 adb 为例:

root@kitploit:~
# 1. 推送并运行利用程序(每次开机运行一次)
adb push exploit/exploit_vivo_neo9 /data/local/tmp/
adb shell 'chmod 755 /data/local/tmp/exploit_vivo_neo9; /data/local/tmp/exploit_vivo_neo9'

# 2. 成功后:SELinux 置为 permissive,rootd 守护进程在 /data/local/tmp 就绪(rootd_ready.txt)
#    推送客户端工具
adb push exploit/client/su exploit/client/rootc exploit/client/u0 /data/local/tmp/
adb shell 'chmod 755 /data/local/tmp/su /data/local/tmp/rootc /data/local/tmp/u0'

# 3. 使用 su(默认 rootc 模式;需 euid=0 时加 --u0)
adb shell
su -c 'id'
su --u0 -c 'id'

# 4. 加载 KernelSU 模块并启动守护进程
adb push kernel-module/kernelsu-vivo.ko userspace/ksud userspace/su_ksu /data/local/tmp/
adb shell '/data/local/tmp/ksud'
#    之后以 su_ksu 作为 KernelSU 的 su 使用

5. 组件说明

5.1 exploit 利用链

  • 利用程序运行后,通过漏洞获得任意物理内存读写,扫描并泄露内核基址(KASLR 绕过);
  • 对 selinux_state 执行 RMW 写入,将 SELinux 置为 permissive;
  • 对内核 kprobe_dispatcher 打补丁,禁用 vr.ko 的 kprobe 检测(vivo 反 root 监控);
  • 在 /data/local/tmp 建立 rootd 守护进程(rootd_cmd / rootd_out / rootd_ready.txt 文件通道),供客户端请求执行命令。

5.2 su / rootc / u0 客户端

  • rootc(默认模式):rootc <命令> 或 rootc B64:<base64>,经文件通道交给 rootd 以 euid=2000 + 全 capabilities 执行(此设计用于规避 vr.ko 的反 root 限制);
  • u0 模式:su --u0 -c "命令",以 euid=0 真 root 执行,用于调用需要真 root 的接口;
  • su 脚本:su 是包装脚本,默认注入 PATH=/data/local/tmp:$PATH 便于短名调用工具, 支持 -c/--command、--u0/-0、-s/--shell、--no-path 等参数,并兼容 stdin 交互;
  • shim.so:以 LD_PRELOAD 方式注入宿主进程执行自定义代码的共享库。

5.3 KernelSU(kernel-module + userspace)

  • kernelsu-vivo.ko:针对该 vivo 内核(5.15.178)编译的 KernelSU 内核模块(vermagic 与内核完全匹配);
  • ksud:KernelSU 守护进程,负责加载 kernelsu.ko(按 KMI 版本自动匹配)、管理 su 与授权;
  • su_ksu:KernelSU 的 su 程序,配合管理器进行 root 授权;
  • asuid:以指定 UID 执行命令(asuid <uid> <cmd...>),用于测试/降权场景;
  • 探测工具:ksu_feature_probe、ksu_probe、ksu_probe2、su_test2 用于检测 KernelSU 功能与运行环境。

5.4 test-modules(内核测试/辅助模块)


6. 注意事项

  • 非持久化:利用获得的 root 每次开机后失效,需重新运行利用程序;
  • 软重启:setprop ctl.restart zygote 软重启可保留已获得的 root 状态, 此时需配合 vrpatch.ko / unpatch.ko 维持兼容;
  • 概率性:GPU 内存喷洒为概率性成功,失败可重试或等待设备冷却后重试;
  • 所有二进制为 aarch64(Android ELF),仅适用于匹配的设备与内核版本;
  • 设备安全补丁若已修复该漏洞(GPU 固件 v676),本利用将失效。

7. 参考

  • zhuowei/cheese — CVE-2025-21479 PoC
  • ma4the/omae-wa-cheese-da — CVE-2025-21479 完整利用链(Galaxy Z Flip 5)
  • CamsShaft/SELinux-Permissive-Only-CVE-2025-21479
  • Qualcomm 2025 年 6 月安全公告
  • KernelSU
टूल डाउनलोड करें
项目说明
目标设备vivo iQOO Neo 9
SoC / GPUSnapdragon 8 Gen 2 / Adreno 740(A7xx 系列,受 CVE-2025-21479 影响的固件版本)
内核5.15.178-gaacdc35637c4-dirty(vivo 定制,aarch64,支持 mod_unload / modversions)
架构所有 ELF 均为 64 位 aarch64(Android)
安全补丁需在 GPU 固件修复(v676)之前,否则漏洞已失效
模块用途
ksu_testmod.koKernelSU 内核模块测试
proctest.ko / puretest.ko进程行为/纯净度测试
vrpatch.ko中和 vr.ko 的 root 检测(软重启后保持 root 兼容)
unpatch.ko恢复 cap_bprm_creds_from_file 挂钩(软重启兼容)