一种基于强化学习的模糊测试用例自适应变异方法和装置制造方法及图纸

技术编号:21971215 阅读:55 留言:0更新日期:2019-08-28 01:25
本发明专利技术公开了一种基于强化学习的模糊测试用例自适应变异方法和装置,该方法选择与待变异测试用例类型对应的变异操作组进行自适应变异的学习,从而能够有针对性地选择变异策略,进而实现更为细粒度的变异操作;本发明专利技术进一步采用类型信息和变异操作组成上下文信息输入单步强化学习模型,单步强化学习模型将不同变异操作的选择问题转化为多臂赌博机问题中不同摇臂的选择,使用上下文相关的置信区间上界算法LinUCB进行自适应变异操作的学习,以实现不同类型场景下的变异操作自适应学习,从而采用能够获得更高路径覆盖率的变异操作进行测试用例变异,提高模糊测试自适应变异的效率和质量。

A Fuzzy Test Case Adaptive Variation Method and Device Based on Reinforcement Learning

【技术实现步骤摘要】
一种基于强化学习的模糊测试用例自适应变异方法和装置
本专利技术属于信息安全领域,尤其涉及一种基于强化学习的模糊测试用例自适应变异方法和装置。
技术介绍
模糊测试是漏洞挖掘领域的重要方法,目前较为流行的模糊测试工具大多具有良好的漏洞发现能力,因此模糊测试在实践和研究方面都受到了广泛的关注。目前,较为流行的模糊器包括libFuzzer、AFL及其改进工作AFLFast、AFLGo、VUzzer、QSYM、PTFuzz、AGF、TIFF等。上述工具虽然在很多场景下可以有效地发现漏洞,但其仍存在以下两方面局限性:(1)现有的研究工作主要集中于如何选取最有希望的父母种子进行变异,即优先选择可能触发漏洞或覆盖新路径的种子,以提高上述种子进行变异的概率,但很少有致力于改进模糊测试变异过程的研究工作,而变异操作的选择和优化对于模糊测试后续生成高效测试用例具有至关重要的作用。(2)尽管部分研究工作借助强化学习技术优化模糊测试的变异操作选择过程,例如,AGF和FuzzerGym,但是,上述研究工作并未考虑不同类型程序的结构和特征差异,尚未实现针对特定类型的测试用例文件进行细粒度学习变异策略的自适应模型;本文档来自技高网...

【技术保护点】
1.一种基于强化学习的模糊测试用例自适应变异方法,其特征在于,包括:加载待变异测试用例,对目标二进制程序进行分析,获得待变异测试用例的类型信息;参考预先总结的类型信息与变异操作的映射关系,利用与待变异测试用例的类型信息对应的变异操作,形成变异操作组;类型信息与变异操作组中的每个变异操作形成一个上下文信息,向量化得到特征向量xt,a,将待变异测试用例与形成的各特征向量xt,a输入单步强化学习模型;单步强化学习模型将不同变异操作的选择问题转化为多臂赌博机问题中不同摇臂的选择,使用上下文相关的置信区间上界算法LinUCB进行自适应变异操作的学习,以实现不同类型场景下的变异操作自适应学习,采用能够获得...

【技术特征摘要】
1.一种基于强化学习的模糊测试用例自适应变异方法,其特征在于,包括:加载待变异测试用例,对目标二进制程序进行分析,获得待变异测试用例的类型信息;参考预先总结的类型信息与变异操作的映射关系,利用与待变异测试用例的类型信息对应的变异操作,形成变异操作组;类型信息与变异操作组中的每个变异操作形成一个上下文信息,向量化得到特征向量xt,a,将待变异测试用例与形成的各特征向量xt,a输入单步强化学习模型;单步强化学习模型将不同变异操作的选择问题转化为多臂赌博机问题中不同摇臂的选择,使用上下文相关的置信区间上界算法LinUCB进行自适应变异操作的学习,以实现不同类型场景下的变异操作自适应学习,采用能够获得更高路径覆盖率的变异操作进行测试用例变异。2.如权利要求1所述的方法,其特征在于,所述获得待变异测试用例的类型为:采用动态类型推断技术获得待变异测试用例的文件标识;根据文件标识和类型信息的对应关系确定待变异测试用例文件的类型信息。3.如权利要求1所述的方法,其特征在于,单步强化学习模型在第一轮次学习时,依次使用输入的n个特征向量xt,a中的变异操作ai变异所述待变异测试用例,得到n个变异后的测试用例,称为候选测试用例,i≤n;依次加载这n个候选测试用例,并执行目标二进制程序,收集目标二进制程序的路径执行信息;针对每种变异操作,根据路径执行信息计算使用该种变异操作带来的路径覆盖数量与上一轮次的变异所带来的路径覆盖数量之间的差值,即路径增益然后计算预期收益rt,a及其置信区间上界at,其中,预期收益rt,a的计算公式中加入了路径增益在之后的每个轮次中,在特征向量xt,a中选择置信区间上界at最大的变异操作进行测试用例变异。4.如权利要求3所述的方法,其特征在于,所述收集目标二进制程序的路径执行信息为:借助硬件支持的Intel处理器追踪技术收集测试用例在本次执行中对应的路径执行信息。5.如权利要求1所述的方法,其特征在于,形成变异操作组时,进一步根据需要在变异操作组中加入未映射的变异操作。6.一种基于强化学习的模糊测试用例自适应变异装...

【专利技术属性】
技术研发人员:胡昌振王夏菁马锐赵鹏飞贺金媛
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1