基于软件漏洞攻击的防范技术研究

来源 :南京大学 | 被引量 : 0次 | 上传用户:flywate
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件功能在不断增强的同时,软件的庞杂程度也在提高,这样就无可避免的带来软件漏洞。软件漏洞攻击带来的巨大经济损失,迫切需要我们对各种漏洞攻击的方式进行剖析,从而深刻理解攻击的实现方式和攻击的本质,为攻击的防范和攻击的修复提供更多的信息。   近年来,对漏洞攻击的防范技术的研究已经取得了丰硕的成果。从针对特定已知漏洞和攻击方式的攻击防范技术,比如程序语言增强,主机运行环境增强等,到针对一般性的漏洞攻击防范方法,比如从程序的内部行为特征和外部行为特征进行行为建模规范。然而,这些漏洞攻击防范方法都有其局限性,它们的攻击防范能力取决于对漏洞攻击或环境影响的认知程度,缺乏基于程序分析的软件安全知识;而且,这些防范方法都没有过多的考虑攻击的后续处理,缺乏对攻击后续处理机制扩展性的支持。   本文提出一种基于访问控制的指针动态着色跟踪监控的攻击检测方法。通过对指针的完整性保护和限定指针的合法可访问内存区域,我们可以有效的检测多种类型的恶意攻击,并可以为攻击的后续处理,比如特征签名和自动补丁的生成,提供有用的信息和帮助。   首先,我们通过实验和分析,得到结论,指针是安全敏感(security-sensitive)的数据。底层漏洞攻击(比如,缓冲区溢出攻击,堆腐烂攻击,格式化字符串攻击等)和部分的非控制流攻击,它们攻击的本质,都是通过指针的恶意篡改和指针的越界访问造成的。指针,是绝大多数攻击发起的“元凶”。   其次,我们通过动态着色(dynamic taint analysis)的技术,对程序内部的指针类型的数据进行着色,使得指针和其可以访问的合法内存区域用相同的“颜色”标签指示,通过“颜色”标签来限定指针的合法访问区域;同时,对外来输入数据进行着色,并对外来数据在程序中的传播(propagation)进行跟踪。   最后,在每次指针访问内存操作前,首先检查指针本身的完整性(integrity),如果指针本身被外来数据污染,则表示这是一次攻击;否则,继续比较指针本身和该指针欲访问的内存的“颜色”标签,如果两者标签“颜色”不同,则表示这是一次越界访问错误;反之,这是一次合法的指针访问操作。   为了检测该方法对恶意攻击的实时检测能力,我们在虚拟机Valgrind和插件Flayer上实现了原型系统。我们使用了通用的测试平台Bugbench来进行测试。实验表明,我们的方法可以有效的检测出其中的漏洞程序攻击。  
其他文献
计算机安全领域的一个最大的挑战就是区分正常行为和可疑行为。半个多世纪以来,研究者们大多依靠一些规则来识别以及阻止特定的计算机事件。然而,随着越来越多的大型IT系统之
作战仿真已经成为人们认识战争和学习战争的重要手段和方法,在各层次的分析、训练以及测试与评估等方面发挥着越来越重要的作用,是快速提高部队战斗力、提升国防和军队建设水平
目前,由于信息技术的飞速发展,信息安全问题日趋复杂。在可信计算方面,可信计算技术就是为了解决安全问题而日益成为信息安全领域研究的一个新热点。可信计算平台是解决信息
随着国家教育事业的发展,近年来社会上的各种考试发展迅速,如计算机等级考试,四、六级考试,职业技能鉴定,高自考等。这些考试往往决定着一个人的事途发展,所以参加的人数也是
程序的安全问题,是信息安全的一个重要方面。一方面,软件的复杂度和功能性提高,软件缺陷和漏洞的概率也大大增加,攻击技术也不断发展。另一方面,程序安全方面的研究也取得了长足的
数据交互业务的迅猛发展,对传输数据海量化和数据交互软件间的互操作性提出了要求。VoIP单纯的语音业务已经不能满足人们的通信需要,而业务是通信网络发展的驱动力。通信网络
随着智能手机不断普及,交通模式识别已经成为情景计算的热门研究领域。作为理解用户移动性的核心组成部分,准确识别不同的交通模式,将对许多研究领域产生重要影响。首先,用户的交
在分布式系统应用领域,传统的分布式应用体系结构大都从自身需求出发,使用各种不同的技术构成相互独立的紧耦合的封闭式系统,它们相互之间缺乏兼容性、有效的互操作性以及重用性
由于XML具有自描述性和可扩展性等特点,能够满足WEB上对数据描述和存储的需求,因而使得XML正在成为Web上数据表示和交换的事实上的标准。随着XML格式数据的快速增长和广泛应
随着计算机技术和网络技术的迅猛发展,数字音乐信息的数量在急剧增加,海量的音乐数据已经成为现实。同时,网络音乐是互联网应用的基本模式之一,而音乐检索是网络音乐服务的最主要