中文

CATTmew:击败纯软件物理内核隔离

密码学与安全 2019-10-22 v4

摘要

所有最先进的rowhammer攻击都能破坏MMU强制的域间隔离,因为每个域拥有的物理内存彼此相邻。为缓解这些攻击,CATT引入的物理域隔离通过将物理内存划分为多个分区并仅让一个域占据每个分区,从而在物理上分离各域。CATT实现了物理内核隔离,作为首个通用且实用的纯软件防御,保护内核免受rowhammer攻击,因为内核是最具吸引力的目标之一。在本文中,我们开发了一种新颖的漏洞利用,可有效击败物理内核隔离并获得root和内核权限。我们的漏洞利用无需耗尽页缓存或系统内存,也不依赖虚拟到物理地址映射的信息即可工作。该漏洞利用源于我们的关键观察:现代操作系统具有双拥有内核缓冲区(例如视频缓冲区和SCSI Generic缓冲区),由内核和用户域同时拥有。此类缓冲区的存在使物理内核隔离失效,并使基于rowhammer的攻击再次成为可能。现有的实现root/内核权限提升的显著rowhammer攻击会耗尽页缓存甚至整个系统内存。相反,我们提出了一种名为内存伏击的新技术。它仅需少量内存即可将可锤击的双拥有内核缓冲区物理放置在目标对象(例如页表)相邻处。因此,我们的漏洞利用更隐蔽且内存占用更少。我们还用一种高效的rowhammer算法替换了盲目选取地址进行锤击的低效算法。我们的算法基于已有的时序信道选择合适的地址。

关键词

引用

@article{arxiv.1802.07060,
  title  = {CATTmew: Defeating Software-only Physical Kernel Isolation},
  author = {Yueqiang Cheng and Zhi Zhang and Surya Nepal and Zhi Wang},
  journal= {arXiv preprint arXiv:1802.07060},
  year   = {2019}
}

备注

Preprint of the work accepted at the IEEE Transactions on Dependable and Secure Computing 2019