
安全研究员 Joseph Goydish 在苹果 WebKit 引擎中发现了一个高危漏洞,该漏洞可能导致攻击者使浏览器崩溃,或通过与其他漏洞链式利用,在最新 iOS 设备上执行任意代码。最新报告详细披露了 iOS 26.2 中存在的危险整数溢出漏洞。
漏洞影响范围
该漏洞影响 JavaScriptCore(JSC)引擎——这是 Safari 和所有 iOS 第三方浏览器的核心组件。虽然苹果内置的防御机制目前尚能抵御攻击,但该漏洞作为一种"确定性原语",可能被黑客用于更严重的攻击。
漏洞技术原理
漏洞源于典型的整数溢出软件错误。报告指出,该问题出现在为 ArrayBuffer、TypedArray 和 WebAssembly 操作计算内存边界时。
分析报告解释称:"漏洞根源在于计算 TypedArray 和 DataView 操作的内存偏移量时发生的整数溢出。"
当系统将索引乘以元素大小时,结果可能在"32位边界处回绕"。这种数学错误会混淆系统,使攻击者能够请求一个技术上通过初始检查、但实际指向安全区域之外的内存地址。
现有防护机制
目前,用户受到 WebKit 安全分区机制 Gigacage 的保护。当溢出尝试访问 16GB 许可分区之外的内存时,Gigacage 会检测到违规行为并立即终止 WebContent 进程。
虽然这阻止了恶意代码的立即执行,但会导致持续的拒绝服务(DoS),使浏览器或嵌入式网页视图立即崩溃。
潜在风险升级
报告警告称,这种安全网并非坚不可摧。"如果 Gigacage 被绕过或其基地址泄露,该漏洞将导致相对内存损坏",使攻击者能够操纵与溢出缓冲区相邻的对象。
最坏情况下,这可能通过"虚表劫持"实现远程代码执行(RCE),攻击者通过破坏虚函数指针来控制设备的指令指针。
受影响设备
漏洞已在运行 iOS 26.2(版本号 23C55)的 iPhone 14 Pro Max 上得到确认。报告指出影响范围可能更广,包括:
- 所有 iOS 26.x 版本
- macOS Sequoia 15.x
- 所有 iOS 第三方浏览器(因为它们必须使用 WKWebView 引擎)
PoC验证
Goydish 提供了一个仅需几行 JavaScript 代码的概念验证(PoC)。通过创建 DataView 缓冲区并设置特定的 Uint32 值,该代码强制触发 32 位回绕,从而导致崩溃。
报告总结称:"Gigacage 目前通过在内存损坏发生前终止进程来防止漏洞利用",但如此基础的逻辑缺陷存在,再次提醒我们现代网络安全所依赖的数学基础有多么脆弱。
参考来源:
The iOS 26.2 Trap: New WebKit Integer Overflow Discovered with PoC—Is Your iPhone at Risk?
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



