Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2019-2215 — 针对 CVE-2019-2215 的概念验证漏洞利用程序,该漏洞是 Android binder 驱动中的释放后使用(use-after-free)漏洞,可在存在漏洞的设备上实现本地权限提升。 | Kitploit
工具/GitHubGitHub/codecat007/cve-2019-2215
Android安全权限提升漏洞利用框架漏洞分析漏洞利用移动安全二进制利用
GitHubcodecat007/cve-2019-2215

CVE-2019-2215

针对 CVE-2019-2215 的概念验证漏洞利用程序,该漏洞是 Android binder 驱动中的释放后使用(use-after-free)漏洞,可在存在漏洞的设备上实现本地权限提升。

查看仓库
2157年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2019-2215

以下问题存在于 https://android.googlesource.com/kernel/msm 的 android-msm-wahoo-4.4-pie 分支(以及其他可能的分支):

在 /drivers/android/binder.c 的 binder 驱动中,binder_thread 结构体的 wait 成员存在一个释放后使用漏洞。

正如上游提交描述的那样: “binder_poll() 将 thread->wait 等待队列传递给可以休眠等待工作的进程。当一个使用 epoll 的线程通过 BINDER_THREAD_EXIT 显式退出时,等待队列被释放,但它从未从相应的 epoll 数据结构中移除。当进程随后退出时,epoll 清理代码尝试访问等待列表,导致释放后使用。”

以下概念验证代码将展示在启用了 KASAN 的内核构建中的 UAF 崩溃(来自初始上游漏洞报告 https://lore.kernel.org/lkml/[email protected]/): #include <fcntl.h> #include <sys/epoll.h> #include <sys/ioctl.h> #include <unistd.h>

    #define BINDER_THREAD_EXIT 0x40046208ul

    int main()
    {
            int fd, epfd;
            struct epoll_event event = { .events = EPOLLIN };

            fd = open("/dev/binder0", O_RDONLY);
            epfd = epoll_create(1000);
            epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);
            ioctl(fd, BINDER_THREAD_EXIT, NULL);
    }

该问题已于 2017 年 12 月在 4.14 LTS 内核 [1]、AOSP android 3.18 内核 [2]、AOSP android 4.4 内核 [3] 和 AOSP android 4.9 内核 [4] 中修复,但根据源代码审查,配备最新安全公告的 Pixel 2 仍然存在漏洞。

根据源代码审查,其他似乎存在漏洞的设备有(除非另有说明,否则指 8.x 版本):

  1. Pixel 2(搭载 Android 9 和 Android 10 预览版)(https://android.googlesource.com/kernel/msm/+/refs/heads/android-msm-wahoo-4.4-q-preview-6/)
  2. Huawei P20
  3. Xiaomi Redmi 5A
  4. Xiaomi Redmi Note 5
  5. Xiaomi A1
  6. Oppo A3
  7. Moto Z3
  8. Oreo 版 LG 手机(根据网站,运行相同的内核)
  9. Samsung S7, S8, S9

我们有证据表明该漏洞正在被野外利用。因此,该漏洞需遵守 7 天披露截止日期。在 7 天过去或补丁广泛可用之后(以先到者为准),漏洞报告将对公众可见。

已确认此概念验证在 Pixel 2 上有效,版本为 walleye_kasan-userdebug 10 QP1A.191105.0035899767,导致 KASAN 崩溃。概念验证 C 代码和 new.out 已附上。KASAN 控制台输出已附上。

我从 TAG 和外部方收到了关于一个归因于 NSO 集团的 Android 漏洞利用的技术信息。这些细节包括关于漏洞和利用方法的事实,包括但不限于:

  • 这是一个利用释放后使用漏洞的内核权限提升,可从 Chrome 沙箱内部访问。
  • 该漏洞据称正在被 NSO 集团使用或出售。
  • 它在 Pixel 1 和 2 上有效,但在 Pixel 3 和 3a 上无效。
  • 它已在 Linux 内核 >= 4.14 中修复,但没有分配 CVE。
  • CONFIG_DEBUG_LIST 破坏了原语。
  • CONFIG_ARM64_UAO 阻碍了利用。
  • 该漏洞可在 Android 的 'isolated_app' SELinux 域下的 Chrome 渲染进程中被利用,导致我们怀疑 Binder 是有漏洞的组件。
  • 该利用几乎不需要针对每个设备进行定制。
  • 受影响和不受影响的设备及其版本的列表等。本问题的描述中提供了一个非详尽的列表。

利用这些细节,我已确定正在被使用的漏洞几乎肯定是本报告中的这个,因为我在比较补丁后排除了其他潜在候选。关于此漏洞的更详细解释以及识别它的方法,将在有时间时在即将发布的博客文章中撰写。

我们目前没有该利用的样本。没有样本,我们既无法确认时间线,也无法确认载荷。

该漏洞是一个本地权限提升漏洞,允许完全攻陷易受攻击的设备。如果通过网页传递利用,它只需要与一个渲染器利用配对,因为此漏洞可通过沙箱访问。

我附上了一个本地利用概念验证,以演示如何在本地运行时利用此漏洞获得任意内核读/写。它只需要不受信任的应用程序代码执行即可利用 CVE-2019-2215。我还附上了一张截图 (success.png),显示 POC 在 Pixel 2 上运行,该系统运行 Android 10,安全补丁级别为 2019 年 9 月(google/walleye/walleye:10/QP1A.190711.020/5800535:user/release-keys)。

来自 Android 厂商的声明:

此问题在 Android 上被评为高严重性,其本身需要安装恶意应用程序才能进行潜在利用。任何其他向量,例如通过网页浏览器,都需要链接另一个利用。我们已通知 Android 合作伙伴,补丁可在 Android Common Kernel 上获取。Pixel 3 和 3a 设备不受影响,而 Pixel 1 和 2 设备将在十月份更新中获得此问题的修复。

下载工具