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