内容简介:近期,有一群研究人员设计出了一种智能灰盒模糊测试模型,他们声称这种Fuzzer模型在搜寻代码库(解析复杂文件)漏洞方面跟现有Fuzzer相比,新模型的漏洞挖掘效率会更高。
前言
近期,有一群研究人员设计出了一种智能灰盒模糊测试模型,他们声称这种Fuzzer模型在搜寻代码库(解析复杂文件)漏洞方面跟现有Fuzzer相比,新模型的漏洞挖掘效率会更高。
简介
模糊测试 是一种寻找软件漏洞的技术,这种技术需要向待测目标发送恶意构造的输入数据,如果程序发生崩溃或没有执行预期行为,这就表明这里有可能存在安全漏洞。目前,模糊测试技术主要有三种类型:黑盒模糊测试,这种情况下测试人员对待测目标的情况一无所知;白盒模糊测试,这种情况下测试人员需要对待测目标的情况了如指掌,测试主要针对的是程序的源代码;灰盒模糊测试,这种情况下测试人员手上只有部分待测目标信息。
此前,五名分别来自新加坡国立大学、澳大利亚莫纳什大学和罗马尼亚布加勒斯特波利特尼卡大学的安全研究人员一直在寻找一种能够有效提升灰盒模糊测试效率的方法,而现在他们表示研究已经取得了显著成果。
这群研究专家基于American Fuzzy Lop( AFL ,一款由安全专家MichalZalewski开发的模糊测试工具)开发出了一款名叫AFLsmart的工具,而这款 工具 采用了一种他们称之为智能灰盒模糊测试(SGF)的技术。
根据专家的介绍,目前社区有大量专门用于解析复杂文件结构的代码库,比如说解析音频、视频、图片、文档和数据库文件等等,而AFLsmart在分析这类代码库方面的效率非常的高。
在基于代码覆盖的灰盒模糊测试技术中,测试人员需要向fuzzer提供一个种子文件,并通过随机翻转、删除、拷贝或添加比特位的形式生成新的文件,然后让待测目标(代码库)去解析这些文件以发现潜在的安全漏洞。但问题就在于,对于复杂的文件结构(格式),比特位翻转并不一定能生成有效的文件。
不过,研究人员通过定义一种“新型变异操作”来克服了这种困难,这种技术是在虚拟文件结构上实现的,而不是在比特位层,这样就可以确保文件的有效性了。研究人员在白皮书上写到:“我们引入了一种新颖的基于有效性的电源调度方式,它可以让SGF花费更多的时间来生成更容易通过程序解析阶段的文件,从而挖掘到隐藏得更深的业务处理逻辑漏洞。”
在他们的实验过程中,他们对目前十一款热门的用于处理二进制可执行文件(ELF)、图片、音频和视频文件的开源代码库进行了测试,测试名单中包括Binutils、LibPNG、ImageMagick、LibJPEG-turbo、LibJasper、FFmpeg、LibAV、WavPack和OpenJPEG。
研究人员使用AFLsmart对这些代码库进行了测试,并与AFL、AFLfast和Peach Fuzzer等模糊测试工具的结果进行了对比。AFLsmart发现了33个漏洞,是AFL和AFLfast挖到漏洞数量的一倍,而Peach一个漏洞都没找到。
实验结果表明,这款新型模糊测试工具总共发现了42个安全漏洞,其中的17个已经标记了CVE编号。挖掘到的漏洞类型包括断言失败、堆栈缓冲区溢出、空指针引用和除零错误等等。
项目地址
目前,研究人员已经将AFLsmart Fuzzer开源了,感兴趣的同学可以fork一下。
AFLsmartFuzzer:【 GitHub传送门 】
* 参考来源: securityweek ,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM
以上所述就是小编给大家介绍的《Smart Greybox Fuzzing:一种功能更强效率更高的Fuzzer模型》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 利用 AutoML 的功能构建和部署 TensorFlow.js 模型
- 几种流行的大数据分析产品模型预测功能介绍
- 超越生物界「AlphaGo」,MIT 新模型能预测蛋白质功能
- [译] 深入理解 Kubernetes 网络模型:自己实现 kube-proxy 的功能
- [英] 深入理解 Kubernetes 网络模型:自己实现 kube-proxy 的功能
- GitHub核心功能向全球4000万开发者免费开放,私有库可无限协作,大AI模型随便放
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Data Structures and Algorithm Analysis in Java
Mark A. Weiss / Pearson / 2006-3-3 / USD 143.00
As the speed and power of computers increases, so does the need for effective programming and algorithm analysis. By approaching these skills in tandem, Mark Allen Weiss teaches readers to develop wel......一起来看看 《Data Structures and Algorithm Analysis in Java》 这本书的介绍吧!