苹果新一代内存完整性保护技术
苹果在iPhone 17中推出了一项新的硬件/软件安全功能:“内存完整性保护”,旨在应对Pegasus等间谍产品常用来获取未授权系统访问的内存安全漏洞。据《连线》报道:
近年来,全球科技行业持续兴起一场运动,旨在解决普遍存在且隐蔽的内存安全漏洞。计算机内存是所有程序共享的资源,当软件能够从计算机内存中提取本应禁止访问的数据,或操作内存中程序本不应访问的数据时,就会出现内存安全问题。当开发人员(即使是有经验且注重安全的开发人员)使用C和C++等普遍使用的历史编程语言编写软件时,很容易犯导致内存安全漏洞的错误。这就是为什么特殊编程语言等主动工具不断涌现,目标是从结构上确保软件不可能包含这些漏洞,而不是试图避免引入或捕获所有漏洞。
[…]
由于全球大部分代码库都建立在内存不安全编程语言的基础上,苹果的安全工程与架构团队认为,将内存安全机制置于苹果芯片的核心可能是解决这一棘手问题的"天降神兵"。该团队基于芯片制造商Arm于2019年发布的内存标记扩展(MTE)规范进行开发。其核心思想是在硬件层面为每个内存分配设置密码保护,只有当未来访问该内存区域的请求包含正确的密钥时,系统才会授予访问权限。
Arm开发MTE作为帮助开发人员发现和修复内存损坏错误的工具。如果系统收到未通过密钥检查的内存访问请求,应用程序将崩溃,系统将记录事件序列供开发人员审查。苹果工程师思考是否可以让MTE持续运行,而不仅仅作为调试工具使用。该团队与Arm合作,于2022年发布了用于此目的的增强型内存标记扩展(EMTE)规范。
为了使这一切成为针对内存安全漏洞利用的持续实时防御,苹果花费数年时间将保护机制深度构建到芯片中,使得该功能能够为用户全天候开启,同时不影响整体处理器和内存性能。换句话说,为每个内存分配生成并附加密钥,然后要求程序为每个内存请求管理和生成这些密钥,可能会影响性能。但苹果表示已成功解决了这一难题。
标签: Apple, 网络安全, 硬件, 完整性, 漏洞
发布于: 2025年9月23日上午7:07 • 21条评论