当前位置: X-MOL 学术Comput. Secur. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
IBV-CFI: Efficient Fine-grained Control-Flow Integrity Preserving CFG Precision
Computers & Security ( IF 4.8 ) Pub Date : 2020-07-01 , DOI: 10.1016/j.cose.2020.101828
Hyerean Jang , Moon Chan Park , Dong Hoon Lee

Abstract Control-flow integrity (CFI) is a software security solution that prevents software attacks such as control-flow hijacking by restricting the indirect control-flow transfers (ICT) to a pre-computed control-flow graph (CFG). Since the validity of ICTs are determined based on CFG on the CFI mechanism, CFG precision is an important factor in determining CFI security level. However, checking the validity of ICTs based on a precise CFG can incur significant runtime overhead. For this reason, many existing CFI schemes have used a runtime check mechanism that compromises the precision of the CFG. In this paper, we present an Index-based Bit Vector Control-Flow Integrity scheme (IBV-CFI), which performs an efficient runtime check while preserving CFG precision. IBV-CFI generates independent bit vectors for all ICTs and stores a valid target set for each ICT in the bit vector. Independent bit vectors accurately reflect the CFG, so they do not compromise the precision of CFG. In addition, it is possible to determine the validity of the target of the indirect branch through a simple bit value comparison, which enables an efficient runtime check. We implemented a prototype model, IBV-CFI, and performed performance measurements using the SPEC CPU 2017 benchmarks and three real-world applications. The results show that IBV-CFI introduces approximately 1.42% performance overhead.

中文翻译:

IBV-CFI:有效的细粒度控制流完整性保持 CFG 精度

摘要 控制流完整性 (CFI) 是一种软件安全解决方案,它通过将间接控制流传输 (ICT) 限制到预先计算的控制流图 (CFG) 来防止软件攻击,例如控制流劫持。由于在 CFI 机制上基于 CFG 来确定 ICT 的有效性,因此 CFG 精度是确定 CFI 安全级别的重要因素。然而,基于精确的 CFG 检查 ICT 的有效性可能会产生大量的运行时开销。出于这个原因,许多现有的 CFI 方案都使用了运行时检查机制,这会损害 CFG 的精度。在本文中,我们提出了一种基于索引的位向量控制流完整性方案 (IBV-CFI),它在保持 CFG 精度的同时执行有效的运行时检查。IBV-CFI 为所有 ICT 生成独立的位向量,并将每个 ICT 的有效目标集存储在位向量中。独立的位向量准确地反映了 CFG,因此它们不会影响 CFG 的精度。此外,可以通过简单的位值比较来确定间接分支目标的有效性,从而实现高效的运行时检查。我们实施了一个原型模型 IBV-CFI,并使用 SPEC CPU 2017 基准测试和三个实际应用程序执行性能测量。结果表明,IBV-CFI 引入了大约 1.42% 的性能开销。可以通过简单的位值比较来确定间接分支目标的有效性,从而实现高效的运行时检查。我们实施了一个原型模型 IBV-CFI,并使用 SPEC CPU 2017 基准测试和三个实际应用程序执行性能测量。结果表明,IBV-CFI 引入了大约 1.42% 的性能开销。可以通过简单的位值比较来确定间接分支目标的有效性,从而实现高效的运行时检查。我们实施了一个原型模型 IBV-CFI,并使用 SPEC CPU 2017 基准测试和三个实际应用程序执行性能测量。结果表明,IBV-CFI 引入了大约 1.42% 的性能开销。
更新日期:2020-07-01
down
wechat
bug