计算机科学 ›› 2010, Vol. 37 ›› Issue (1): 153-157.

• 软件工程与数据库技术 • 上一篇    下一篇

基于访问控制的动态着色技术在攻击检测中的研究

王磊,茅兵,谢立   

  1. (南京大学软件新技术国家重点实验室 南京210093);(南京大学计算机科学与技术系 南京210093)
  • 出版日期:2018-12-01 发布日期:2018-12-01
  • 基金资助:
    本文受国家自然科学基金(60773171,90818022,60721002),国家863高技术计划(2007AA012448),国家973重点基础研究计划(2009CB320706),江苏省自然科学基金(BK2007136)资助。

Memory Corruption Detection Based on Dynamic Taint Analysis and Access Control

WANG Lei,MAO Bin,XIE Li   

  • Online:2018-12-01 Published:2018-12-01

摘要: 内存腐烂攻击在软件安全攻击中占据着较大的比重。近来,动态着色技术得到了越来越多的关注,这种技术通过在访问内存时检测指针的完整性来抵御攻击。然而,存在一类可以绕过指针完整性检查的策略来进行攻击的实例,比如数组的越界访问攻击。提出了一种基于动态着色跟踪分析的方法来解决这类已有着色技术不能检测的问题。其思想是,借助于内存访问控制的思路,首先像已有的动态着色技术那样,在内存访问时对指针进行完整性检查,然后检查指针将要访问的内存区域是否处于指针合理的访问范围之内。原型系统是基于Valgrind的,并不需要源码,因此可以用于很多商业软件。初步实验验证结果表明,该方法可以有效地检测出很多类型的攻击,系统的性能损耗接近于Memcheck这种常用的内存错误检测工具。

关键词: 内存腐烂攻击,指针着色,内存访问

Abstract: Memory corruption attacks account for most parts of malicious attacks toward software security. Recently dynamic taint analysis was proposed and was gaining momentum. This proposed technique attempts to defeat attacks by checking the taintedness and integrity of pointers when accessing memory. Unfortunately, there exists some class of attacks without tainting pointers, such as array bounds violation attacks using pointers. We proposed a novel approach to defeat this kind of undetected attacks using taint based tracking analysis. Our notion is based on the memory access control,dmt is, first,we will check the taintedness of the pointers when accessing memory like existing taint based approaches, second, we will check whether or not the memory area pointed by the pointer is in the legitimate range of the accessing pointer. Our implementation does not need source code and is based on Valgrind, hence works on commodity software. To demonstrate our idea,we performed a preliminary empirical experiments, the results arc quite promising;our system can effectively detect a wide range of attacks, and the average runtime overhead is close to Memcheck, a widely used memory error detector.

Key words: Memory corruption attacks,Taint pointers,Memory access

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!