欢迎来到天天文库
浏览记录
ID:46612029
大小:955.56 KB
页数:8页
时间:2019-11-26
《基于禁忌搜索的动态符号执行方法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、2015年12月北京航空航天大学学报December2015第4l卷第12期JournalofBeijingUniversityofAeronauticsandAstronauticsV01.41No.12http:}{bhxb.buaa.edu.cnjbuaa@buaa.edu.cnDOI:10.13700/j.bh.1001—5965.2015.0164基于禁忌搜索的动态符号执行方法蔡军1,邹鹏“,马金鑫2,何骏1(1.装备学院复杂电子系统仿真实验室,北京101416;2.中国信息安全测评中心,北京100085)摘要:软件漏洞是网络安全问题的根源之一,软件漏
2、洞检测是当前网络安全领域的一个研究热点.动态符号执行是近年来研究较多的一种漏洞检测技术,针对现有动态符号执行方法在通过约束求解生成测试用例时,生成的测试用例存在大量重复或近似重复的问题,提出了一种基于禁忌搜索的动态符号执行方法,并实现了一个相应的工具原型SwordSE.该方法利用了禁忌搜索算法的全局逐步寻优能力,通过建立评价函数来优选种子文件,通过建立禁忌表来避免重复搜索.实验结果表明,SwordSE的路径搜索效率明显优于现有工具,且已发现0day漏洞4个.关键词:网络安全;软件漏洞检测;禁忌搜索;动态符号执行;中间表示中图分类号:TP309文献标识码:A文章编
3、号:1001.5965(2015)12-2348-0821世纪是网络时代,信息网络已经成为全球经济中最重要的基础设施,与此同时,网络安全问题成为潜藏在我们每一个人身边的现实威胁,软件漏洞是网络安全问题的根源之一,大部分网络攻击都是基于软件漏洞来实施的.例如2014年9月发现的“ShellShock”漏洞,被称为是历来发现的最严重和最普遍的软件漏洞之一,利用这一漏洞,远程攻击者可能在受影响的系统上执行任意代码,其危害性震撼全球.因此,软件漏洞检测在网络安全领域受到了越来越多的关注.本文主要研究面向二进制程序的动态漏洞检测方法.目前主流的动态漏洞检测方法包括模糊测试
4、、动态符号执行和动态污点分析3种方法.模糊测试的基本思想是:构造大量畸形输入,交给目标程序执行,如果程序产生异常(崩溃、挂起等),就有可能存在一个潜在的漏洞;动态污点分析追踪用户输入在程序执行过程中的传播,通过检查软件中的安全敏感操作的输入数据是否为污点数据来检测漏洞.以上两种方法都有各自的优缺点,模糊测试使用简单但是随机性太强,动态污点分析能够精确分析漏洞成因但是只能分析当前已经执行到的程序路径,使用这两种方法的共同缺点是难以获得较高的代码覆盖率.代码覆盖率是软件在测试中执行到的代码量占软件代码总量的比率.理论上,如果软件在某次测试中能达到百分之百的代码覆盖率
5、,就能发现其所有漏洞.与模糊测试、动态污点分析相比,动态符号执行在提高软件测试代码覆盖率方面具有很大的优势,成为漏洞检测技术的研究热点和发展趋势.本文针对现有动态符号执行方法在通过约束求解生成测试用例时,生成的测试用例存在大量重复或近似重复的问题,提出了一种基于禁忌搜收稿日期:2015-03-23;录用日期:2015-06.19;网络出版时间:2015-07.3016:14网络出版地址:WWW.cnki.net/kcms/detail/11.2625.V.20150730.1614.001.html基金项目:国家“863”计划(2012AA012902);“核高
6、基”国家科技重大专项基金(2013ZX01045-004)作者简介:蔡军(1982一),男,湖北天门人,博士研究生,ejgfkd@163.com+通讯作者:邹鹏(1957一),男,山东高青人,教授,zpeng@nudt.edu.ca,主要研究方向为信息安全.引用格式:蔡军,邹鹏,马金鑫,等.基于禁忌搜索的动态符号执行方法fJJ.北京航空航天大学学报,2015,4J(12):2348.2355.Caij。ZouP,MajX,eta1.Dynamicsymbolicexecutionapproachbasedontabusearch£
7、].JournalofBeij
8、ingUniversityofAero-nauticsandAstronautics,2015,4J(12):2348-2355(inChinese).第12期蔡军,等:基于禁忌搜索的动态符号执行方法索(TabuSearch,TS)的动态符号执行方法,并实现了一个相应的工具原型SwordSE.SwordSE的核心思想为:①以ValgrindVEX⋯中间表示作为符号执行的基础,通过动态插桩来实现符号引入、符号传播和约束收集;②使用SimpleTheoremProver(STP)L2}约束求解器求解路径约束来生成测试用例,通过约束分析和求解缓存来提高求解效率;③以禁
9、忌搜索算法作为路径搜索算
此文档下载收益归作者所有