找回密码
 注册
关于网站域名变更的通知
查看: 395|回复: 1
打印 上一主题 下一主题

[毕业设计] 一种基于遗传算法的Fuzzing测试用例生成新方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-3-11 10:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
一种基于遗传算法的Fuzzing测试用例生成新方法

  M# F5 U+ A  j1 [8 k/ G7 c+ j摘要:本文根据传统漏洞挖掘Fuzzing技术的特点,针对其存在的不能求解非线性解和只能有单个的输入的问题,提出了一种基于遗传算法的漏洞挖掘测试用例生成的新方法.该方法能够利用遗传算法的优势,同时可以应对多输入测试用例问题和非线性求解问题.从自测程序的结果看出,相比于传统随机生成Fuzing测试用例的方法,本方案在效率和覆盖率方面具有明显的提高.( }6 x* {0 l6 X3 B2 m' d
关键词:遗传算法;非线性求解;多维Fuzzing技术2 {* ]) A8 V* C

. v5 D/ ?" Y8 S7 j/ i' k1引言
' c: J' }, D* @3 a, ~% F3 ?在目前各类软件的安全测试中, Fuzzing 技术以其高度的自动化特性被广泛使用.但 Fuzzing技术在测试的过程中具有很大的盲目性,当遇到巨大的测试用例空间时测试效率受到很大影响.特别是在求解非线性解和只能有单个输入这两方面具有很大的不足.本文将遗传算法的思想应用到Fuzzing测试用例生成的过程之中,参考历史进化信息,使用适应度函数来影响进化方向.在不影响Fuzzing 测试高度自动化的前提下指导测试用例的生成规则,从而提高了Fuzzing测试的效率.最后通过设计实验证明了本方法(适应度函数构造方法)在提高测试效率方面的有效性.
) q1 I# E3 d6 x% U4 E! X9 d传统的漏洞挖掘主要使用Fuzzing测试技术,其基本框架如图1所示.目前常用的Fuzzing测试软件 Spike能够克服静态挖掘的测试效率不高,漏报率高的问题,从而具有较好的测试效果1~3].但是,由于传统Fuzzing技术~6]的测试用例是随机生成的,而在随机生成的测试用例中往往存在大量冗余无用的数据,占用了大量测试时间,造成系统资源的浪费,因此需要对以往Fuzz-ing测试用例的生成方法进行改进,提高生成有用测试用例的效率.# \$ p. O  v2 x  x7 _3 e; u. k. S
目前相关研究针对的目标程序多只有一个输入,即待测程序变量只有一个,并且程序中的大部分判断条件基本上都是简单的加减法,即一般线性判断条件(如a * x +b<0).但在实际的漏洞挖掘中,往往输入变量并不止一个,并且分支语句、循环语句的判断条件也不一定满足线性,故而本文针对这种情况提出了新的解决办法.
; U- R  c5 f0 i6 L. G) K, X9 m4 n9 M  Q" L, w5 ^8 \
游客,如果您要查看本帖隐藏内容请回复
* h; h) [( Q; U' N8 j4 _2 G
# C8 v; Q- r# m6 s! b

( c( Y( o" l9 ~5 t  |

该用户从未签到

2#
发表于 2021-3-11 11:13 | 只看该作者
一种基于遗传算法的Fuzzing测试用例生成新方法
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-21 01:55 , Processed in 0.078125 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表