Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
huawei-p10-cve-2017-8890-unlock — Huawei P10 VTR-L29C432B151 CVE-2017-8890 漏洞利用研究与 Bootloader 解锁之旅 | Kitploit
工具/GitHubGitHub/sweatyrocket/huawei-p10-cve-2017-8890-unlock
Android安全嵌入式系统安全权限提升漏洞利用论文与研究学习与教育二进制利用
GitHubsweatyrocket/huawei-p10-cve-2017-8890-unlock

huawei-p10-cve-2017-8890-unlock

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Huawei P10 VTR-L29C432B151 CVE-2017-8890 漏洞利用研究与 Bootloader 解锁之旅

查看仓库
21个月前尚未审核

Huawei P10 CVE-2017-8890 引导加载程序解锁研究

本仓库记录了一项经设备所有者授权的研究项目,该项目将 CVE-2017-8890 移植到一款华为 P10 固件上,将内核 use-after-free 转化为任意内核读写与临时 root 权限,重建了华为的 NVE 日志,通过合法的 NVE 驱动程序安装了一个替代的引导加载程序凭据,并验证了 fastboot 接受了所选定的明文代码。

测试目标为:

  • Huawei P10 VTR-L29,C432 地区版本
  • 固件 VTR-L29C432B151
  • Android 7.0 / EMUI 5.1
  • 内核 4.1.18-gbed9f04
  • 安全补丁级别 2017-05-05

这并不是一个通用的 P10 解锁工具。随附的内核配置文件包含针对该确切构建版本的绝对地址。在其他内核上使用它会导致手机内核崩溃,并可能损坏持久化存储。即使市场型号保持不变,固件升级也可能会改变该配置文件。

完整且可公开的叙述以 PDF 报告 的形式提供。

结果

成功链路如下:

root@kitploit:~
CVE-2017-8890 multicast UAF
  -> controlled overlap with ip_mc_socklist
  -> forced RCU grace period in the exploit's address space
  -> AArch64 JOP arbitrary store
  -> ptmx_fops.check_flags temporarily redirected
  -> address limit widened to KERNEL_DS
  -> pipe-based arbitrary kernel read/write
  -> check_flags restored
  -> current task credentials and SELinux SID patched
  -> protected NVME partition acquired
  -> replacement SHA-256 verifier written with /dev/nve0
  -> complete 128 KiB generation read back and compared
  -> controlled reboot
  -> fastboot unlock accepted the chosen plaintext

该引导加载程序凭据在后来一次官方的 Android 8 / EMUI 8 升级后依然存在,尽管引导加载程序被重新锁定,而同一个选定的明文代码再次将其解锁。这表明该凭据存储在设备的持久化 NVE 数据中,而不是存储在 Android 系统或引导镜像中。

从这里开始

  1. 阅读 SAFETY.md。
  2. 确认上文列出的确切固件与内核。
  3. 阅读 docs/exploit-development.md,了解为何原始公开利用代码不能立即可靠地工作。
  4. 按顺序遵循 docs/reproduction.md。
  5. 在临时 root、完整的 NVME 备份、离线候选验证以及恢复规划全部成功之前,不要执行持久化写入阶段。

仓库布局

root@kitploit:~
exploit/CVE-2017-8890/1003/  modified exploit implementation
utils/                       GPLv3 androotzf support code
jni/                         Android NDK build files
tools/p10_nve_journal.py     read-only inspector and offline candidate builder
docs/exploit-development.md  technical exploit journey
docs/nve-format.md            Huawei NVE journal and credential semantics
docs/reproduction.md         staged reproduction procedure
report/                       redacted long-form PDF

本仓库不包含任何已编译的利用代码、固件镜像、分区转储、引导镜像、专有商业工具、解锁码、设备标识符或设备派生的凭据摘要。

上游与许可

该利用代码最初基于 GPLv3 许可的 idhyt/androotzf 实现,提交版本为 63dfe5556e1a8cdbf6a2d3dd0ee929b07bfb48b7。本仓库保留了上游版权声明和 GPLv3 许可证。针对 P10 B151 的可靠性改进、诊断、内核读写、临时 root、分区转储以及受保护的 NVE 事务等改动,均被标识为 2026 年 7 月本项研究期间所做的修改。

署名与修改详情请参阅 NOTICE.md。

负责任地使用

请仅将本成果用于你拥有或明确获准测试的硬件。引导加载程序解锁会擦除用户数据(userdata 分区)。该利用代码会故意破坏内核对象,并且除非进入受控的重启路径,否则通常会在之后引发清理阶段的内核崩溃。本成果不提供任何担保,也不保证能够恢复。

下载工具