基于类型的控制流完整性的有效性研究
密码学与安全
2020-02-17 v2
摘要
控制流完整性(CFI)因能在存在内存破坏漏洞时抵御控制劫持攻击而受到学界广泛关注。构建实用 CFI 的挑战催生了一类基于运行时类型检查(RTC)的新型 CFI。RTC 型 CFI 已在若干近期实用工作中实现,如 GRSecurity 重用攻击保护器(RAP)与 LLVM-CFI。尽管此前已有诸多研究其他类型 CFI 技术优劣的工作,对 RTC 型 CFI 的评估却鲜有涉及。本工作中,我们从安全性与实用性两方面研究 RTC 的有效性。从安全视角,我们观察到在足够大的代码库中类型冲突大量存在,但利用其构建可用攻击并非易事。随后我们展示攻击者如何借助一种遵从类型检查的 ROP 攻击变体(称为 TROP)成功绕过 RTC 技术,并构建了两个概念验证漏洞利用,分别针对 Nginx 网页服务器与 Exim 邮件服务器。我们还讨论了实现 RTC 的实用挑战。我们的结果表明,尽管 RTC 对将 CFI 应用于大型代码库更为实用,其策略在面对蓄意攻击者时仍不够强健。
引用
@article{arxiv.1810.10649,
title = {On the Effectiveness of Type-based Control Flow Integrity},
author = {Reza Mirzazade Farkhani and Saman Jafari and Sajjad Arshad and William Robertson and Engin Kirda and Hamed Okhravi},
journal= {arXiv preprint arXiv:1810.10649},
year = {2020}
}
备注
Annual Computer Security Applications Conference (ACSAC), San Juan, Puerto Rico, USA, December 2018