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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2019-2215-HuaweiP20Lite — 针对华为P20 Lite的CVE-2019-2215(bad binder)漏洞利用 | Kitploit
工具/GitHubGitHub/willboka/cve-2019-2215-huaweip20lite
Android安全权限提升漏洞利用学习与教育二进制利用
GitHubwillboka/cve-2019-2215-huaweip20lite

CVE-2019-2215-HuaweiP20Lite

针对华为P20 Lite的CVE-2019-2215(bad binder)漏洞利用

查看仓库

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
5232年前尚未审核

将 CVE-2019-2215 (bad binder) 移植到华为 P20lite (Android 8.0.0)

描述

该项目是 CVE-2019-2215 在华为 P20lite 上的漏洞利用,系统版本为 Android 8.0.0。内核版本为 4.4.23。

这一漏洞很可能是该主题中记录最详尽的一个(教程、在实体手机上的实际移植),并且我有一部存在漏洞的手机,因此这是学习 Android 内核漏洞利用的良好起点。

警告:该漏洞利用会将所有 SELinux 类型设为宽松模式,因此可能允许其他应用绕过 SELinux。

安装

首先克隆仓库:

root@kitploit:~
git clone https://github.com/willboka/CVE-2019-2215-HuaweiP20Lite.git
cd CVE-2019-2215-HuaweiP20Lite

将 setools-android 克隆到 CVE-2019-2215-HuaweiP20Lite 文件夹中,并编译 libsepol (libsepol.a)。使用以下命令完成:

root@kitploit:~
make libsepol

这是绕过 SELinux 所必需的。

使用以下命令构建项目:

root@kitploit:~
make # 或者执行:NDK_PROJECT_PATH=. ndk-build NDK_APPLICATION_MK=./Application.mk

二进制文件位于 libs/arm64-v8a 文件夹中。

使用以下命令构建并推送到 /data/local/tmp:

root@kitploit:~
make push

用法

从命令行启动二进制文件 cve-2019-2215(已在 Termux 和 ADB 中测试):

root@kitploit:~
/data/local/tmp/cve-2019-2215 # 通过 adb 执行

重启以重置 SELinux 策略。

演示

漏洞利用演示 - mp4

链接

我用于学习该漏洞利用的相关链接。

在虚拟设备上测试

  • Project Zero bad binder 解析: 漏洞说明,以及如何在 PoC 中将其转化为任意读写原语。
  • Android Kernel Exploitation: 更深入地解释了漏洞和设置,并附有调试方面的增值内容(GDB 脚本、使用 sanitizer)。
  • Tailoring CVE-2019-2215 to Achieve Root: 关于绕过 Linux 内核安全特性的方法。

在真实设备上开发

  • s8_2019_2215_poc: 漏洞利用移植的真实案例——我使用了其中 avc 缓存绕过的方法,但不幸无法采用相同技术获取符号条目,因为在读取某些内核页面时遇到了内核崩溃。因此,我根据泄露的 task_struct 中第一个受 Kaslr 影响的符号(fair_sched_class)来猜测 Kaslr 偏移。
  • cve2019-2215-3.18: 这个漏洞利用实际上最为接近,因为此处 binder_struct 中 wait 字段的偏移量为 0xa8(在他的情况中是 0x98)。
下载工具