首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到10条相似文献,搜索用时 15 毫秒
1.
针对传统文件测试效率不高、存在功能遗漏的缺点,提出一种基于文件规范描述的文件模糊测试方法。给出基于文件规范的文件推导规则,用于描述文件中结构的组织形式、结构与结构之间的依赖关系,生成同一格式下不同类型的文件并对每类文件进行模糊测试。实验结果表明,该方法能有效找到文件处理软件的脆弱点。  相似文献   

2.
模糊测试是当前检测程序错误的最主流、最有效的手段之一.模糊测试工具首先对种子文件进行变异,生成大量新输入文件,然后挑选新输入来执行目标程序,以触发程序中潜在的漏洞.当前对模糊测试的研究多着眼于改进变异算法,提高生成的新文件对目标程序代码的覆盖,忽略了备用种子文件的筛选策略对提高模糊测试覆盖率与测试效率的的贡献.针对该问题,我们提出了基于覆盖频率的种子文件筛选策略,在每次执行目标程序时,我们记录程序执行中覆盖过的路径边;根据边被执行次数的多少,我们将这些边分为低频边和高频边;对于包含了更多低频边且执行效率高的种子文件,我们给予更高的优先级.我们在模糊测试工具American Fuzzy Lop (AFL)实现了对应的算法,实验表明我们的算法有效提高了模糊测试的效率和代码覆盖率.  相似文献   

3.
模糊测试是一种有效的漏洞挖掘技术.为改善模糊测试因盲目变异而导致的效率低下的问题,需要围绕输入特征、变异策略、种子样本筛选、异常样本发现与分析等方面不断定制模糊测试器,从而花费了大量的定制成本.针对通用型模糊测试器(即支持多类输入格式及目标软件的模糊测试器)的低成本定制和高可扩展性需求,本文首次提出了一种可编程模糊测试框架,基于该框架漏洞挖掘人员仅需编写模糊测试制导程序即可完成定制化模糊测试,在不降低模糊测试效果的基础上可大幅提高模糊测试器开发效率.该框架包含一组涉及变异、监控、反馈等环节的模糊测试原语,作为制导程序的基本语句;还包含一套编程规范(FDS)及FDS解析器,支持制导程序的编写、解析和模糊测试器的生成.基于实现的可编程模糊测试框架原型Puzzer,在26个模糊测试原语的支持下,漏洞挖掘人员平均编写54行代码即可实现当前主流的5款万级代码模糊测试器的核心功能,并可覆盖总计87.8%的基本操作.基于Puzzer实现的AFL等价模糊测试器,仅用51行代码即可达到与AFL相当的模糊测试效果,具有良好的有效性.  相似文献   

4.
变异粒子群算法实现模拟电路模糊组识别   总被引:1,自引:1,他引:0  
针对常规三角分解方法计算模拟电路规范模糊组和可测试值存在误差的问题,提出一种基于测试矩阵基向量的变异粒子群算法.该算法分析了电路的各阶规范模糊组参数成分,根据粒子速度和位置初始化找到所有二阶模糊组,由低阶模糊组确定高阶模糊组的构成参数,通过粒子速度变异找到所有规范模糊组.实例验证表明:该算法不通过三角分解就能够找出所有的规范模糊组,提高了计算精度,同时也降低了计算复杂度.  相似文献   

5.
模糊测试被广泛应用于浏览器的漏洞挖掘,其效果好坏的决定因素之一是测试者编写的测试模式.针对特定测试模式实现成本高、生存时间短等问题,本文提出了一种基于模式生成的浏览器模糊测试器自动构造方法,通过解析已知漏洞触发样本,自动提取测试模式,对模式中每个模块应用传统的变异策略,完成畸形样本的自动生成.实验表明,针对5款浏览器的1089个已知漏洞触发样本,平均仅用时11.168秒即可完成1089个不同模糊测试器的自动构建,远低于人为编写的时间消耗;随机选取其中10个模糊测试器分别对IE 10、IE 11、Firefox 54.0的全补丁版本进行测试,共产生57个不同的崩溃样本,发现1个高危未知漏洞,证明本方法具有较好的未知漏洞发现能力.  相似文献   

6.
模糊测试在挖掘软件安全漏洞、提高软件安全性方面发挥着巨大的作用,本文针对模糊测试变异策略效率较低以及种子评分策略不合理的问题进行了讨论,提出了基于聚类的变异优化策略和基于新覆盖信息的能量分配策略.第1个改进策略通过产生新覆盖的非确定性变异提取有效的组合变异位置,然后利用聚类算法进一步确定有效变异的位置,在变异阶段对有效变异的位置进行细粒度确定性变异.本文第2个改进策略针对种子评分策略,种子产生的新覆盖信息与静态分析的分支转移信息作为种子评分的重要指标.我们将改进后的模糊测试工具-AgileFuzz与现有的模糊测试改进工具AFL 2.52b、AFLFast以及EcoFuzz进行比较,对binutils、libxmll2等开源程序进行了多次实验.实验结果表明, AgileFuzz在相同时间内发现了更多的程序分支覆盖,并且在测试过程中发现了fontforge、harfbuzz等开源软件中5个未知的漏洞.  相似文献   

7.
模糊测试被广泛应用于各种软件和系统的漏洞挖掘中.而模糊测试的效果与其采用的变异策略以及初始种子文件的代码覆盖率有直接的关系.本文提出了一种基于深度学习的种子文件生成方法,分析并学习初始种子文件和其在目标程序中的执行路径之间的关系,最终输出可能覆盖新执行路径的种子文件,从而提高初始种子文件集合的代码覆盖率.我们以PDF阅读器作为目标程序进行了实验,实验结果表明该方法所生成的种子文件保证了良好的通过率,而且明显提高了代码覆盖率.同时实验证明该方法在针对多种PDF阅读器进行模糊测试时都获得了更高的代码覆盖率.  相似文献   

8.
为在语言解释器的模糊测试中构造符合语言规范的样本,并尽可能地得出异常测试结果以便发现漏洞,采用改进的概率上下文无关语法模型控制样本的变异过程,对变异结果中的未定义变量进行修正以提高符合语言规范的样本比率。在此基础上,对语言解释器进行模糊测试,结果表明,该测试所生成样本中符合语法、语义规范的比率高达96%。  相似文献   

9.
在软件开发及应用中,由于具有可复现性,模糊测试能够帮助发现漏洞和有针对性地对漏洞成因进行分析。为了解决模糊测试过程的效率及测试力度等问题,提出了软件漏洞模糊测试的关键分支探索及热点更新算法。该方法通过捕获、分析和利用受检程序在处理测试用例时的执行位置的关键信息,以指导模糊测试过程的探索方向和测试用例的生成。实验结果表明,提出的方法相较于传统随机发散的模糊测试方法在漏洞发现能力上有较大提升,在Otfcc、Swftools等14个开源程序中发现了100余个未被公布的漏洞,为模糊测试用于软件漏洞检测提供了新的可靠途径。  相似文献   

10.
本文针对盲目变异的模糊测试策略带来的效率低下的问题,综合程序控制流图、输入种子样本特征、异常样本发现、模糊测试器路径反馈等信息,提出一种更为有效的种子输入变异策略.本文通过不断监控种子文件在目标程序中的执行路径,并引入污点分析的方法,以建立起新增执行路径的起始语句与种子文件中关键字节的一对多映射关系.最终本文将根据这种映射关系对种子文件中的能够增加路径覆盖的字节进行变异,以期得到更有效率的模糊测试结果.我们的实验表明,增加定向变异之后的模糊测试器在代码覆盖率,以及模糊测试的效率上都有较为显著的提升.  相似文献   

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

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