前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Smart Greybox Fuzzing:功能更强效率更高

Smart Greybox Fuzzing:功能更强效率更高

作者头像
FB客服
发布2018-12-28 11:03:10
8690
发布2018-12-28 11:03:10
举报
文章被收录于专栏:FreeBuf

前言

近期,有一群研究人员设计出了一种智能灰盒模糊测试模型,他们声称这种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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 简介
  • 项目地址
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档