...
首页> 外文期刊>Journal of computer security >Modular protections against non-control data attacks
【24h】

Modular protections against non-control data attacks

机译:模块化保护,防止非控制数据攻击

获取原文
获取原文并翻译 | 示例
   

获取外文期刊封面封底 >>

       

摘要

This paper introduces Yarka, a conservative extension to C to protect applications from non-control data attacks. Yarra programmers specify their data integrity requirements by declaring critical data types and ascribing these critical types to important data structures. Yarra guarantees that such critical data is only written through pointers with the given static type. Any attempt to write to critical data through a pointer with an invalid type (perhaps because of a buffer overrun) is detected dynamically. We formalize Yarra's semantics and prove the soundness of a program logic designed for use with the language. A key contribution is to show that Yarra's semantics are strong enough to support sound local reasoning and the use of a frame rule, even across calls to unknown, unverified code. We evaluate a prototype implementation of a compiler and runtime system for Yarra by using it to harden four common server applications against known non-control data vulnerabilities. We show that Yarra successfully defends the applications against these attacks. In our initial experiments, we find that the performance impact of Yarra is small, provided the amount of critical data is small and the application is not compute intensive.
机译:本文介绍了Yarka,这是C的保守扩展,可以保护应用程序免受非控制数据攻击。 Yarra程序员通过声明关键数据类型并将这些关键类型赋予重要数据结构来指定其数据完整性要求。 Yarra保证此类关键数据只能通过具有给定静态类型的指针写入。动态检测到通过无效类型的指针写入关键数据的任何尝试(可能由于缓冲区溢出)。我们将Yarra的语义形式化,并证明设计用于该语言的程序逻辑的正确性。一个关键的贡献是表明,Yarra的语义足够强大,可以支持合理的局部推理和使用框架规则,即使在调用未知,未经验证的代码时也是如此。我们使用Yarra来针对已知的非控制数据漏洞强化四个通用服务器应用程序,从而评估了Yarra编译器和运行时系统的原型实现。我们表明,Yarra成功防御了这些攻击的应用程序。在我们的初始实验中,我们发现,只要关键数据量很小并且应用程序不占用大量计算资源,Yarra的性能影响就很小。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号