Intel MPK 是一个有效的提供数据权限隔离的手段,并且性能十分地高效,切换权限仅需要 20 个左右的 CPU 指令周期。可是挑战在于:1)MPK 只能针对用户态的页,该如何用在特权模式下做同级隔离;2)当应用程序调用内核函数时,权限切换该如何设计;3)MPK 不能够控制内存页的可执行权限,该如何防止 ROP[39]等类似的代码复用攻击。

Intel MPK(Memory Protection Keys)提供了一种高效的数据权限隔离方案,但存在限制。如何在特权模式下应用MPK进行同级隔离、处理内核函数调用时的权限切换,以及如何防御ROP攻击,成为亟待解决的安全问题。
Intel MPK 是一个有效的提供数据权限隔离的手段,并且性能十分地高效,切换权限仅需要 20 个左右的 CPU 指令周期。可是挑战在于:1)MPK 只能针对用户态的页,该如何用在特权模式下做同级隔离;2)当应用程序调用内核函数时,权限切换该如何设计;3)MPK 不能够控制内存页的可执行权限,该如何防止 ROP[39]等类似的代码复用攻击。

3442
809