With the increasing popularity of AArch64 processors in general-purpose computing, securing software running on AArch64 systems against control-flow hijacking attacks has become a critical part toward secure computation. Shadow stacks keep shadow copies of function return addresses and, when protected from illegal modifications and coupled with forward-edge control-flow integrity, form an effective and proven defense against such attacks. However, AArch64 lacks native support for write-protected shadow stacks, while software alternatives either incur prohibitive performance overhead or provide weak security guarantees. We present InversOS, the first hardware-assisted write-protected shadow stacks for AArch64 user-space applications, utilizing commonly available features of AArch64 to achieve efficient intra-address space isolation (called Privilege Inversion) required to protect shadow stacks. Privilege Inversion adopts unconventional design choices that run protected applications in the kernel mode and mark operating system (OS) kernel memory as user-accessible; InversOS therefore uses a novel combination of OS kernel modifications, compiler transformations, and another AArch64 feature to ensure the safety of doing so and to support legacy applications. We show that InversOS is secure by design, effective against various control-flow hijacking attacks, and performant on selected benchmarks and applications (incurring overhead of 7.0% on LMBench, 7.1% on SPEC CPU 2017, and 3.0% on Nginx web server).


翻译:随着AArch64处理器在通用计算领域的日益普及,保护运行于AArch64系统上的软件免受控制流劫持攻击已成为安全计算的关键环节。影子栈通过维护函数返回地址的副本,并在防止非法修改的基础上结合前向边控制流完整性,形成了一种有效且经过验证的防御手段。然而,AArch64缺乏对写保护影子栈的原生支持,而软件替代方案要么性能开销过高,要么安全保障薄弱。我们提出InversOS——首个利用硬件辅助实现AArch64用户空间应用写保护影子栈的系统。它借助AArch64常用特性,实现保护影子栈所需的高效地址空间内隔离(称为“权限反转”)。权限反转采用了非常规设计:将受保护应用运行于内核模式,并将操作系统内核内存标记为用户可访问。为此,InversOS创新性地结合了操作系统内核修改、编译器变换及另一项AArch64特性,以确保该方案的安全性并支持遗留应用。实验表明,InversOS具有设计安全性,能有效抵御多种控制流劫持攻击,并在选定基准测试与应用中表现出高性能(LMBench开销7.0%,SPEC CPU 2017开销7.1%,Nginx Web服务器开销3.0%)。

0
下载
关闭预览

相关内容

【硬核书】稀疏多项式优化:理论与实践,220页pdf
专知会员服务
73+阅读 · 2022年9月30日
 【SIGGRAPH 2020】人像阴影处理,Portrait Shadow Manipulation
专知会员服务
29+阅读 · 2020年5月19日
手把手教你写 Dart ffi
阿里技术
0+阅读 · 2022年11月7日
“我最想要的六种编程语言!”
CSDN
1+阅读 · 2022年7月22日
强化学习三篇论文 避免遗忘等
CreateAMind
20+阅读 · 2019年5月24日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
16篇论文入门manipulation研究
机器人学家
16+阅读 · 2017年6月6日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2023年6月2日
Arxiv
0+阅读 · 2023年6月2日
Arxiv
13+阅读 · 2022年8月16日
Arxiv
29+阅读 · 2021年11月2日
VIP会员
最新内容
超越网格:作战环境对炮兵的影响
专知会员服务
2+阅读 · 5月31日
BES:让语言模型通过双向进化搜索自我改进
专知会员服务
5+阅读 · 5月30日
以色列-美国-伊朗战争中的无人机:关键要点
专知会员服务
4+阅读 · 5月30日
《Palantir任务保障性软件安全标准(MA-S2)》
专知会员服务
18+阅读 · 5月30日
基于声学的无人机检测技术综述
专知会员服务
10+阅读 · 5月30日
《当代混合战争分析框架:俄乌战争经验教训》
相关VIP内容
【硬核书】稀疏多项式优化:理论与实践,220页pdf
专知会员服务
73+阅读 · 2022年9月30日
 【SIGGRAPH 2020】人像阴影处理,Portrait Shadow Manipulation
专知会员服务
29+阅读 · 2020年5月19日
相关资讯
手把手教你写 Dart ffi
阿里技术
0+阅读 · 2022年11月7日
“我最想要的六种编程语言!”
CSDN
1+阅读 · 2022年7月22日
强化学习三篇论文 避免遗忘等
CreateAMind
20+阅读 · 2019年5月24日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
16篇论文入门manipulation研究
机器人学家
16+阅读 · 2017年6月6日
相关基金
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
1+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员