首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
受限于不完备的函数调用图分析和路径可达性分析,当前静态整数溢出检测工具存在较为严重的误报情况.为解决这一问题,以源代码中外部输入可控的整数溢出缺陷的自动挖掘为目标,给出一种综合调用图分析、静态污点分析和静态符号执行的检测方法.提出一种域敏感的流敏感指针分析方法构建目标程序调用图的"高估计",应用静态污点-sink传播分析确定潜在的外部输入可控的整数溢出缺陷程序点,最后应用静态符号执行技术通过判定缺陷约束的可满足性对误报情况进行约减.实验验证了方法在实际整数溢出缺陷检测和误报情况约减方面的应用有效性.  相似文献   

2.
针对Android应用Intent通信可能导致的安全风险,设计了基于动静结合的安全威胁检测方法.静态分析阶段检测应用中请求的内部和外部组件并判断组件是否存在被劫持的风险,然后对存在利用Extra属性进行数据传输的Intent对象利用污点跟踪确定是否存在数据和权限泄露;动态测试阶段根据静态分析检测到的Intent对象构造Fuzzing测试数据,发送测试指令给测试对象并收集应用的执行日志,确定是否存在拒绝服务风险.实验结果表明检测方法可以有效和全面地检测由Intent通信导致的安全缺陷.   相似文献   

3.
Unlink攻击是一种Linux平台下面向堆溢出漏洞的攻击方式.已有的缓冲区溢出漏洞攻击检测技术通过检查程序控制流状态来确定程序漏洞触发点,并生成测试用例.但由于堆溢出数据很少直接导致程序控制流劫持以及相关保护机制的限制,已有的检测技术很难判断程序是否满足堆溢出攻击条件.为了提高程序的安全性,实现对Unlink攻击的检测,文中通过对已有Unlink攻击实例的分析,总结了Unlink攻击特征,建立了Unlink攻击检测模型,并根据该模型提出了Unlink攻击检测方法.该方法使用污点分析实现了对程序输入数据以及敏感操作的监控;使用符号执行技术构建程序污点变量传播的路径约束以及触发Unlink攻击的数据约束;通过对上述约束的求解,判断程序堆溢出漏洞是否满足Unlink攻击触发条件,并生成测试用例.实验结果表明,该方法能有效地实现针对Unlink攻击的检测.  相似文献   

4.
针对目前模糊测试方法存在大量无效测试用例的缺陷,提出了一种利用动态污点跟踪优化模糊测试的方法.该方法通过将外部输入的测试用例标记为污点数据,并记录污点数据的传播路径,然后利用传播路径相似度比对来判断某个测试用例是否有效,若测试用例无效则直接丢弃,若测试用例有效则进行并行化处理,进一步对测试用例进行分析.通过构建原型系统对上述方法进行验证,结果表明优化后的模糊测试比未优化的模糊测试在性能上提升了近一倍.  相似文献   

5.
漏洞签名是指触发程序漏洞的输入的集合,利用漏洞签名对程序输入进行过滤是一种有效的保护漏洞程序的方法。该文主要研究漏洞签名的生成技术,提出了一种有效的基于污点分析和符号执行的漏洞签名生成方法,它通过污点信息传播定位输入中的与触发漏洞相关的字节,然后,通过符号执行得到路径约束,并通过约束求解得到最终的漏洞签名。基于开源项目Pin和Z3,该文构建了基于污点分析和符号执行的漏洞签名生成原型系统TASEVS,并对漏洞程序进行了验证。实验结果表明,TASEVS能有效地生成漏洞签名。  相似文献   

6.
Fuzzing漏洞挖掘技术是针对缓冲区溢出漏洞挖掘常用的技术之一,该测试存在随机性和盲目性等问题.为此依据缓冲区溢出攻击的特征策略,结合静态分析的控制流思想,提出了一种基于遗传算法的漏洞挖掘技术,依据缓冲区溢出攻击的特征设计出对应的遗传算法适应度函数,智能引导测试数据逻辑到漏洞程序的危险区域,使其快速命中缓冲区溢出漏洞.仿真实验表明,与模拟退火算法比较,具有更快的收敛速度和较高完备性.  相似文献   

7.
针对目前面向对象软件的测试方法较少且效率不高的问题,提出将基于ART(adaptive ran-dom testing)思想的限制性随机测试RRT(restricted random testing)应用到面向对象程序中的方法.分析了面向对象软件测试用例的结构,提出了测试用例包含动态部分和静态部分.确定测试用例之间的距离为动态部分和静态部分的距离和,并分别给出了这2个距离的计算公式.设计了基于RRT的测试原型系统,该原型系统主要的功能模块有类图录入模块、测试用例距离度量模块、基于RRT测试用例生成模块、结果分析模块.通过试验对比了文中方法与随机测试方法.结果表明,文中提出面向对象的RRT方法在发现第1个程序错误的测试中比随机测试方法减少了约50%的测试用例数量,且在发现测试用例的质量上也几乎与随机测试相同.文中提出的测试用例度量机制能够有效地对面向对象软件中的测试用例进行区分,基于RRT的测试原型系统也能自动化地生成测试用例并自动测试从而大大提高了面向对象软件测试的效率.  相似文献   

8.
高峰  郑纯  刘厂 《应用科技》2010,37(7):30-34
考虑到单元测试的并行性,提出了基于函数优先级的测试策略.分析了函数的参数、全局变量和局部变量对函数控制流正确实现的影响,建立了量化的权值影响因子数学模型,并结合函数的控制流图生成了带权值有向无环图,最后根据AOE-网关键路径求解算法,生成被测函数的关键路径,设计测试用例.测试结束之后,再进行次关键路径选择,直至达到测试标准.通过以上技术,合理分配各模块测试计划时间,有助于提高软件测试效率,保证软件质量.  相似文献   

9.
软件测试是软件开发过程中最为耗时的阶段之一.通过自动执行大量的测试用例,可以高效、及时地发现软件程序中潜在的错误,这是提高大中型软件开发质量的重要技术发展趋势.目前较多的元启发式优化算法已经能够实现测试用例的自动生成,但测试效率较低且开销较大,所以如何使得生成的测试用例在数量较少的情况下覆盖尽可能多的目标,就成为自动化测试用例生成中的核心技术问题.本文提出一种基于损失函数的单元测试用例自动化生成算法(LFGA),在遗传算法的执行过程中,根据测试用例种群的路径覆盖情况,动态改变后续种群的分布,保证整体数据分布的平衡性.并利用分支信息优化自适应交叉变异算子,自动生成规模尽可能小且高覆盖的有效测试用例集.实验结果表明,相比于已有的自动生成测试用例方法,较好地解决了传统模型中初值依赖、收敛早熟、局部寻优能力滞后等缺陷,保证了生成的测试用例平均覆盖率达到95%,提升了搜索效率及数据使用效率.  相似文献   

10.
静态分析是检测软件代码缺陷和提升软件代码质量的有效方式. 由于静态分析不实际运行代码,不能获取足够的运行时信息,因此分析结果的准确性有待提高. 相比而言,符号执行技术能够模拟执行程序并收集大量的数据流信息,提升数据流分析的准确程度,弥补静态分析的不足. 为了提高静态分析工具分析程序缺陷的准确性,本文设计并实现了一个代码缺陷检测工具ABAZER-SE,它基于GCC抽象语法树,综合采用符号执行与静态分析技术以检测源代码中的缺陷. 使用Toyota ITC静态分析基准对该工具进行了评估,实验结果表明,本文方法及工具可以提高静态分析结果的准确性.   相似文献   

11.
Android第三方广告框架应用广泛,但Android系统漏洞和Android第三方广告框架的逻辑缺陷严重威胁着Android市场安全。攻击者可以通过恶意广告获取敏感数据、触发敏感操作,甚至是以应用程序的权限执行任意代码。该文总结了4种Android恶意广告攻击方式,并针对这4种方式设计了一种基于后向切片算法和静态污点分析的Android第三方广告框架静态测量方法,以及一种基于API Hook和靶向API Trace的Android恶意广告敏感行为动态检测方法。基于以上研究,该文设计并实现了Android恶意广告威胁分析与检测系统,通过实例证明该系统能够有效地分析Android第三方广告框架可能存在的安全隐患,并能够动态检测Android恶意广告的敏感行为。  相似文献   

12.
提出一种测试用例生成方法.针对穿越程序各节点间测试用例数目的不等性,引入测试用例穿越程序后流量均衡性的概念,给出节点间流量均衡因子的定义及计算过程,并根据个体加入前后流量均衡性,设置遗传算法的适应值函数,以快速进化生成覆盖目标路径的测试用例.  相似文献   

13.
基于控制流的多线程程序的静态切片算法   总被引:3,自引:1,他引:2  
介绍一种基于控制流的多线程程序的静态切片算法, 该算法的主要思想是在构造多线程程序依赖图的同时保留程序的控制流信息, 利用这些信息能 够判断出程序中的多线程可实现路径, 从而提高多线程程序静态切片的精度和效率. 最后给出一个多线程切片的实例.  相似文献   

14.
在软件漏洞挖掘领域,Fuzzing测试是使用最广泛、最有效的方法之一。传统Fuzzing测试方法存在工作效率低、盲目性强等不足。该文提出一种样本集精简算法和一种加权的测试时间模型,能够在保证代码覆盖率不变的情况下减少测试样本的数量,同时使优质的样本得到更多的测试时间片;设计了一种基于污点传播的异常分析方法,可评估异常信息的危害程度,有助于提高漏洞分析的效率。实验结果表明:与Peach实验进行对比,该文提出的方法有效地改进了传统的Fuzzing测试方法。  相似文献   

15.
为提高软件测试的缺陷检测速率,提出结合需求与反馈信息的动态测试用例优先级排序方法.根据需求优先级和需求是否变更对测试用例优先级进行初始化,执行过程中结合需求相关性和反馈信息动态调整未被执行的测试用例的优先级,直到测试用例执行条件跳出为止.在GPSking中的验证结果为:本方法的APFD为68.73%,而测试用例按被创建顺序的APFD为51.4%,仅采用需求优先级静态排序的APFD为67.5%.结果表明,该方法能很好地提高缺陷检测速率.  相似文献   

16.
基于集合进化优化方法,实现新的测试用例生成方法.实现的算法中,一个个体包含多个测试用例,一次运行该算法能够生成满足测试需求的测试用例集.实验结果表明,将实现的方法用于具体程序能够生成覆盖所有分支的测试用例集.  相似文献   

17.
一种基于模型检验的类测试用例生成方法   总被引:1,自引:0,他引:1  
提出一种新的自动生成类测试用例的方法.使用符号执行从类源代码抽取对象的状态和行为,以一个四元组抽象描述类,并转化成等价的Kripke结构.使用CTL公式描述测试覆盖标准,然后把这组CTL公式和描述类状态行为的Kripke结构输入模型检验工具,并利用模型检验工具自动生成相应的证据路径,最后将路径转化成满足相应覆盖标准的类测试用例.该方法直接从源代码生成测试用例,并使用贪心法约减冗余用例以降低测试成本.实验表明该方法生成的测试用例具有较高的覆盖率.  相似文献   

18.
随着软件在关键性系统中的大量应用,为避免造成灾难性的后果,必须对软件进行测试.但是,当前使用的测试方法常常需要测试人员手工开发测试用例,非常费时费力.本文介绍了基于AI规划的测试用例生成方法,通过初始状态和目标状态描述软件的典型使用情况,以此作为输入,能够自动地生成测试用例.  相似文献   

19.
随着UML建模在软件开发中的广泛应用,基于状态图的测试用例自动生成方法逐渐成为规格说明测试中的重要研究方向.在研究了现有测试用例生成方法的基础上,提出了采用函数最小化思想,依据边界测试准则生成测试数据,采用深度优先策略及记忆化搜索高效地生成测试用例.实验结果显示该方法能以较少的测试用例达到较高的路径覆盖率.  相似文献   

20.
为检测Android远程控制类恶意软件,该文通过对实际的该类软件进行分析,提出一种基于控制依赖分析的动态污点检测方法。动态污点分析技术是一种检测恶意软件的主流技术。该文对传统的动态污点分析进行扩展以检测Android远程控制类恶意软件。首先采用静态分析确定条件转移指令的控制范围;再使用静态插桩在目标应用中添加分析控制依赖的功能。插桩后的应用可在运行时检查敏感操作是否控制依赖于污染数据,进而对远程控制类恶意软件进行有效的分析和检测。该文实现了一个原型检测系统。实验结果表明:应用此方法可以有效地检测出实际的Android远程控制类恶意应用。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号