软件学报

北大核心,INSPEC,JST,Pж(AJ),EI

国内刊号:11-2560/TP

国际刊号:1000-9825

软件学报杂志2022年第11期:有效覆盖引导的定向灰盒模糊测试

发布日期:

作者:杨克,贺也平,马恒太,蔡春芳,谢异,董柯

单位:杨克,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004911,贺也平,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 100049;计算机科学国家重点实验室(中国科学院 软件研究所), 北京 10019002,马恒太,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004903,蔡春芳,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004904,谢异,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004905,董柯,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004906

关键词:定向模糊测试;有效覆盖;冗余种子;能量调度;程序切片

基金:中国科学院战略性先导科技专项(XDA-Y01-01,XDC02010600)

定向灰盒模糊测试技术在度量种子对目标执行状态的搜索能力时,除了考虑种子逼近目标代码的程度之外,还需要分析种子对多样化执行状态的发现能力,从而避免陷入局部最优.现有的定向灰盒模糊测试主要根据全程序的覆盖统计来度量种子搜索多样化执行路径的能力.然而,目标执行状态仅依赖于部分程序代码.如果带来新覆盖的种子并未探索到目标状态计算所依赖的新执行状态,其不仅不能扩大种子队列对目标执行状态的搜索能力,而且会诱导测试目标无关的代码和功能,阻碍定向测试向目标代码的收敛.为了缓解该问题,从待发现目标执行状态依赖代码的覆盖统计着手,提出了一种有效覆盖引导的定向灰盒模糊测试方法.利用程序切片技术提取影响目标执行状态计算的代码.通过能量调度(即控制种子后代生成数量),提升引发该部分代码控制流新覆盖变化的种子能量,降低其他冗余种子的能量,使定向灰盒模糊测试专注于搜索目标相关的执行状态.在测试集上的实验结果显示,该方法显著提升了目标状态发现效率.

来源:2022年第11期

《软件学报》期刊编辑部

查看软件学报杂志2022年第11期

联系我们

  • 地址:北京8718信箱
  • 电话:010-62562563
  • E-mail:jos (a) iscas. ac. cn

咨询工作人员