本文主要是介绍PAC下的ROP问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Armv8.3-A引入了pointer authentication选项。 pointer authentication可以减轻ROP攻击。 为了防止ROP攻击,在函数开始时,LR寄存器中的返回地址被签名。这意味着在寄存器的高位添加了一个PAC。在返回之前,使用PAC对返回地址进行验证。如果检查失败,当用于分支时将生成异常。以下图表显示了一个例子:
这一变化使得发起ROP攻击变得更加困难。这是因为,要形成小工具链,攻击者需要知道这些小工具的位置,并且需要正确签名的指针指向这些位置。要获取签名指针,攻击者需要访问签名小工具。
这篇关于PAC下的ROP问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!