当前位置: X-MOL 学术IEEE Trans. Dependable Secure Comput. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Stopping Memory Disclosures via Diversification and Replicated Execution
IEEE Transactions on Dependable and Secure Computing ( IF 7.0 ) Pub Date : 2021-01-01 , DOI: 10.1109/tdsc.2018.2878234
Kangjie Lu , Meng Xu , Chengyu Song , Taesoo Kim , Wenke Lee

With the wide deployment of security mechanisms such as Address Space Layout Randomization (ASLR), memory disclosures have become a prerequisite for critical memory-corruption attacks (e.g., code-reuse attack)—adversaries are forced to exploit memory disclosures to circumvent ASLR as the first step. As a result, the security threats of memory disclosures are now significantly aggravated—they break not only data confidentiality but also the effectiveness of security mechanisms. In this paper, we propose a general detection methodology and develop a system to stop memory disclosures. We observe that memory disclosures are not root causes but rather consequences of a variety of hard-to-detect program errors such as memory corruption and uninitialized read. We thus propose a replicated execution–based methodology to generally detect memory disclosures, regardless of their causes. We realize this methodology with Buddy: By seamlessly maintaining two identical running instances of a target program and diversifying only its target data, Buddy can accurately detects memory disclosures of the data, as doing so will result in the two instances outputting different values. Extensive evaluation results show that Buddy is reliable and efficient while stopping real memory disclosures such as the Heartbleed leak.

中文翻译:

通过多样化和复制执行阻止内存泄露

随着地址空间布局随机化 (ASLR) 等安全机制的广泛部署,内存泄露已成为关键内存损坏攻击(例如代码重用攻击)的先决条件——攻击者被迫利用内存泄露来规避 ASLR第一步。因此,内存泄露的安全威胁现在显着加剧——它们不仅破坏了数据机密性,而且破坏了安全机制的有效性。在本文中,我们提出了一种通用的检测方法并开发了一个系统来阻止内存泄露。我们观察到内存泄露不是根本原因,而是各种难以检测的程序错误(例如内存损坏和未初始化读取)的后果。因此,我们提出了一种基于复制执行的方法来检测内存泄露,不管他们的原因。我们通过 Buddy 实现了这种方法:通过无缝维护目标程序的两个相同运行实例并仅对其目标数据进行多样化,Buddy 可以准确检测数据的内存泄露,因为这样做会导致两个实例输出不同的值。广泛的评估结果表明,Buddy 在阻止真实内存泄露(例如 Heartbleed 泄漏)的同时可靠且高效。
更新日期:2021-01-01
down
wechat
bug