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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
一种基于遗传算法的Fuzzing测试用例生成新方法
+ \! q+ q! ^+ A9 S9 x4 g  {
摘要:本文根据传统漏洞挖掘Fuzzing技术的特点,针对其存在的不能求解非线性解和只能有单个的输入的问题,提出了一种基于遗传算法的漏洞挖掘测试用例生成的新方法.该方法能够利用遗传算法的优势,同时可以应对多输入测试用例问题和非线性求解问题.从自测程序的结果看出,相比于传统随机生成Fuzing测试用例的方法,本方案在效率和覆盖率方面具有明显的提高." s6 w! y2 h8 J/ |# a# K9 W  _
关键词:遗传算法;非线性求解;多维Fuzzing技术8 y. h! k, D) b+ m% S& C2 C; h
1 @" u" t1 R, M' Y3 ]# }
1引言
9 ^1 h3 K( [$ A2 w在目前各类软件的安全测试中, Fuzzing 技术以其高度的自动化特性被广泛使用.但 Fuzzing技术在测试的过程中具有很大的盲目性,当遇到巨大的测试用例空间时测试效率受到很大影响.特别是在求解非线性解和只能有单个输入这两方面具有很大的不足.本文将遗传算法的思想应用到Fuzzing测试用例生成的过程之中,参考历史进化信息,使用适应度函数来影响进化方向.在不影响Fuzzing 测试高度自动化的前提下指导测试用例的生成规则,从而提高了Fuzzing测试的效率.最后通过设计实验证明了本方法(适应度函数构造方法)在提高测试效率方面的有效性.
; ^9 V  I) b5 e  d9 ~1 S8 E传统的漏洞挖掘主要使用Fuzzing测试技术,其基本框架如图1所示.目前常用的Fuzzing测试软件 Spike能够克服静态挖掘的测试效率不高,漏报率高的问题,从而具有较好的测试效果1~3].但是,由于传统Fuzzing技术~6]的测试用例是随机生成的,而在随机生成的测试用例中往往存在大量冗余无用的数据,占用了大量测试时间,造成系统资源的浪费,因此需要对以往Fuzz-ing测试用例的生成方法进行改进,提高生成有用测试用例的效率.
% |8 a" S* u3 V目前相关研究针对的目标程序多只有一个输入,即待测程序变量只有一个,并且程序中的大部分判断条件基本上都是简单的加减法,即一般线性判断条件(如a * x +b<0).但在实际的漏洞挖掘中,往往输入变量并不止一个,并且分支语句、循环语句的判断条件也不一定满足线性,故而本文针对这种情况提出了新的解决办法.0 \3 P. Z3 @0 S5 m1 [% v
8 P4 H4 `4 y9 U; w) N
游客,如果您要查看本帖隐藏内容请回复

8 x4 p5 C5 G6 f4 p. g6 N  ~: d) T% N
. p! l. n+ d3 N
6 v- U% o9 d9 b1 G, b5 j6 R3 K

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-20 07:10 , Processed in 0.109375 second(s), 26 queries , Gzip On.

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

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

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