一种结合路径追踪的错误注入技术分析与实现

来源 :北京大学 | 被引量 : 0次 | 上传用户:greenbrowser
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件安全漏洞通常是由在软件设计过程中的软件错误引入的,随着软件系统的复杂程度和规模的提高,软件漏洞也越来越多。因此软件错误的分析方法及工具研究对于软件安全漏洞发现具有重要意义。 本文在对路径追踪技术和错误注入系统进行研究的基础上,完成了以下工作:(1)提出了一种“灰盒”分析方法:本文的主要工作集中在一种基于路径追踪的错误注入技术的研究,采用软件的灰盒分析方法,组合白盒分析技术和黑盒输入测试,利用白盒技术收集目标软件的相关信息,通过黑盒分析发现软件错误。该方法与以往的错误注入不同之处在于能够在测试目标软件时能够实现目标软件内部执行空间上的遍历,找到并记录从输入点开始能够执行的所有路径信息。通过使用所设计的基于块的控制流模型以及对汇编程序的分支路径覆盖算法,可以在不借助目标软件的源代码情况下,通过控制目标软件调试信息的输出,检测什么时候会执行分支并判断代码执行的是哪条路径,并保存相应的路径信息。使得软件的错误能够得到精确定位和正确理解。 (2)提出了状态协议分析(STAPA)模型:传统的软件错误注入系统大部分是基于随机数据注入而实现,机制简单但是注入效率不高,针对该问题,本文中设计了状态协议分析(STAPA)模型,减少无效输入数据的生成,提高通过网络接口进行错误注入的效率。并且更加全面的涵盖了输入集的范围,为更全面的测试目标软件的安全性提供了有效的技术支持。 (3)将模糊集合引入注入数据的产生,并提出模糊集合测试方法,针对各种网络协议,接口构造相应的输入。同时,针对网络协议接口,分别构造格式、语义、随机数据以及命令序列方面的不同测试集,扩大了错误注入系统的输入集范围。作者根据以上研究,编程实现了一个原型系统。通过运行实验表明,利用上述技术所设计的系统能够在较短的时间内构造大量合适的注入数据对目标软件进行安全性测试,并能够覆盖目标软件大部分的分支路径。同时,路径追踪技术能够对这些路径分支进行追踪,通过对所生成的路径信息进行分析,能够帮助分析人员更好的理解目标软件的内部逻辑。并且通过这些技术的结合,能够发现软件中存在的错误,并对其进行准确的定位。在注入数据的使用效率以及对错误的分析和定位方面对传统的错误注入系统有所改进。
其他文献
随着Internet技术的发展,如何充分利用网络的特性,解决IT系统开发和应用中的各种问题,如:建立可维护、可扩展的站点,开发高效率、高伸缩性的应用程序,创建N层分布式应用程序,实现Web
视频压缩技术是多媒体技术的关键。在过去的20年中,ISO/IEC和ITU-T分别制定了MPEG-x和H.26x系列标准用于数字视频的压缩。在2003年,由它们联合组成的JVT小组共同制定了最新一代
基于Android操作系统的手机、电视、汽车、路由器等智能设备越来越多,使移动互联网越来越多的渗透到人们生活、工作、学习中的方方面面。移动互联网给人们的生活带来了极大的
图像分割在医学应用中具有特殊的重要意义,它是医学图像处理的关键-步,是一个跨越医学和计算机科学的综合性研究课题。本文选择了基于边界的活动轮廓分割算法。活动轮廓模型引入
避障路径规划是工程设计中一项重要的环节,其应用范围涉及我们的生活、工作、科研和娱乐等等方面。比如在车辆出行系统,舰船导航系统,敏捷运输问题,工程进度规划,三维游戏和虚拟战
计算机图形技术正越来越广泛地应用在各种领域,在具体应用中,每一幅图形都由成百上千条直线和曲线构成,这样对于每一条直线或曲线的处理速度和质量就极大地影响着整幅图形的处理
当今世界充满了激烈竞争,为了扩大更大市场,企业必须从过去单纯提高产品的质量转变到提高服务质量,对客户信息进行多方面分析,以便做出决策,最大限度的保留客户,这就是客户关系管理
资源搜索是随着世界范围内Internet的发展而产生的。但是,随着Internet以及WWW技术的迅猛发展,导致其所蕴涵的信息量急剧的膨胀。面对如此庞大的信息量,目前普遍采用的基于中央
以信息化、数字化、网络化为特点的社会的发展对国家以及社会生活安全性提出了全新的要求,在这种环境下,传统的安全技术呈现出无法解决的重大缺陷。而生物特征认证技术是解决
Internet技术的飞速发展和万维网在世界范围内的普及,使Web中包含的信息以惊人的速度增加着,Web成为了当代社会重要的信息来源。由于Web上信息的海量性,使得以往靠人工采集的方