目录
2021年3月,Arm推出了安全性和人工智能(AI)能力越来越强的下一代Arm v9架构。在安全和调试方面,最相关的改进之一是对内存标记扩展(MTE)的支持,这是新的Arm v9 cpu的一个关键特性。MTE旨在缓解与内存相关的漏洞,以提高连接设备的安全性。在这篇博文中,我们将分享引入MTE背后的动机、对这项技术的概述以及它对开发人员的用处。
一、内存安全BUG导致的安全漏洞
C/C++语言用于移动和客户端设备中的大多数终端用户软件,包括各种领域,如操作系统,机器学习(ML)库,游戏和嵌入式软件。这些语言被广泛使用的原因是它们具有其他编程语言所不具备的特性。其中包括快速的执行速度和直接操作内存地址的能力,这对于低级语言来说是必不可少的。另一方面,如果使用不当,直接操作内存地址的能力可能导致系统故障。此故障还可能导致软件中的漏洞。攻击者可能会利用这些漏洞来访问敏感信息,恶意更改程序的行为,甚至完全控制控制流。这些可能造成广泛的损害——其中一些损害无法仅用金钱来衡量。
在用C/C++语言编写的代码中,最重要的安全漏洞类是对内存安全的违