首页> 外文会议>IEEE International Conference on Software Quality, Reliability and Security >Leveraging Static Analysis Tools for Improving Usability of Memory Error Sanitization Compilers
【24h】

Leveraging Static Analysis Tools for Improving Usability of Memory Error Sanitization Compilers

机译:利用静态分析工具提高内存错误清理编译器的可用性

获取原文

摘要

Memory errors such as buffer overruns are notorious security vulnerabilities. There has been considerable interest in having a compiler to ensure the safety of compiled code either through static verification or through instrumented runtime checks. While certifying compilation has shown much promise, it has not been practical, leaving code instrumentation as the next best strategy for compilation. We term such compilers Memory Error Sanitization Compilers (MESCs). MESCs are available as part of GCC, LLVM and MSVC suites. Due to practical limitations, MESCs typically apply instrumentation indiscriminately to every memory access, and are consequently prohibitively expensive and practical to only small code bases. This work proposes a methodology that applies state-of-the-art static analysis techniques to eliminate unnecessary runtime checks, resulting in more efficient and scalable defenses. The methodology was implemented on LLVM's Safecode, Integer Overflow, and Address Sanitizer passes, using static analysis of Frama-C and Codesurfer. The benchmarks demonstrate an improvement in runtime performance that makes incorporation of runtime checks a viable option for defenses.
机译:诸如缓冲区溢出之类的内存错误是众所周知的安全漏洞。拥有编译器以通过静态验证或通过检测运行时检查来确保编译后代码的安全性引起了人们的极大兴趣。尽管证明编译已显示出很大的希望,但这并不实际,将代码工具作为下一个最佳编译策略。我们称此类编译器为内存错误清除编译器(MESC)。 MESC是GCC,LLVM和MSVC套件的一部分。由于实际的限制,MESC通常对每个内存访问都无差别地应用工具,因此对于小代码库来说是昂贵且实用的。这项工作提出了一种使用最新的静态分析技术来消除不必要的运行时检查的方法,从而可以实现更有效和可扩展的防御。该方法是通过对Frama-C和Codesurfer的静态分析在LLVM的Safecode,Integer Overflow和Address Sanitizer传递上实现的。基准测试证明了运行时性能的改进,使合并运行时检查成为防御的可行选择。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号