- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华中科技大学李伟明
在漏洞挖掘领域,fuzz testing (模糊测试)是一
种重要的技术。它通过向程序输入大量畸形数据来
使执行程序出现问题,发现可能的漏洞。
优点:
简单方便的黑盒测试,并且已经有大量经验可以发
掘各种漏洞。SPIKE,PEACH。
缺点:
测试数据量大,无法突破应用程序中的验证或检查,
无法进行更为深入的测试。
在2003年的BlackHat Federal 和Blackhat USA
安全会议上提出概念。2010在BlackHat安全大会
上,提出内存fuzz testing原型系统,提高效率。
内存Fuzzing 的方式:循环变异和快照恢复变异。
循环变异是指在被测试代码片段的末尾插入一个无
条件跳转,跳转到代码开头,并继续修改数据,循
环测试。而快照恢复变异是指在被测试代码开头,
保存进程快照,到末尾再把进程快照进行恢复,再
继续变异数据,进行下一轮测试。
内存fuzz testing的优缺点:
优点:
相对普通fuzz testing,不需要多次启动程序,一
次启动程序可以完成大量测试,提高了测试效率。
缺点:
需要较为复杂的配置,要找到合适的快照点和恢复
点,手工参与较多。
本文中提出了一种基于内存fuzz testing系统
PyFuzzer,综合利用了静态特征分析和动态污点跟
踪的技术。在函数级别,提高内存fuzz testing的
自动化。
利用了Distorm反汇编引擎对二进制程序静态解析
和发掘危险函数。
在可执行程序的函数解析中主要使用了基于
call\ret、jmp 指令的函数调用方法,并利用了PE
文件中的导入表来得到二进制程序的所有函数列表。
得到所有的函数后,并不是直接对函数进行fuzz
testing测试,而是利用静态分析方法来为fuzz
testing器找出潜在的高危函数,节省时间并提高效
率。
主要是利用模板比对发
现危险函数。
操作符用Operation表
示。例如mov记作M,
inc记作I,test记作T ,
JMP 记作J 。
Operator ={x, i, r, a,
m, f}
图中的典型结构就可以
记作MrmMmrIrTrrJi。
通过Needleman算法计算出危险指令模板与指
令串的Needleman距离,其值越小,相似度越
高。通过对大量循环结构观察分析,选取以15
作为阈值,当Needleman值小于15时,则认为
是危险指令序列。包含危险指令序列的为危险函
数。
获取危险函数的快照点和恢复点,作为内存fuzz
testing的基础。
在静态分析后,会得到危险函数记录。利用
Pydbg函数库对所有危险函数进行Hook。当发
现被Hook 的函数对输入数据进行处理,就触发
了回调函数记录该函数的入口地址,返回地址及
函数参数信息。
通过分析危险函数的每个参数,判断该参数是否
从外界接收数据。如果从外部接收数据则作为内
存fuzz testing的对象。
fuzz testing通常作用于程序外部,根据一定策
略构造畸形数据并发送给目标程序。
而内存fuzz testing几乎全部作用于程序内部,
只需在开始进行测试时对程序发送一次数据,内
存模糊测试方法就可以在目标进程内自动生成测
试用例的畸形数据,其循环测试过程也不需外界
干预,这样就可以减少程序I/O,提高效率。
1. 确定模糊测试的快照点和恢复点
2. 定位输入数据位置,生成测试用例
3. 循环进行内存模糊测试
4. 记录所有出错现场信息
PyFuzzer对WarFTPD和Serv-U进行了测试,首
先通过静态分析,实验结果如表所示。
采用了网络FTP测试工具4n FTP Fuzzer与PyFuzzer测
试对比。在测试效率上,PyFuzzer测试效率为113次/s,
而4n FTP Fuzzer的测试效率只有48次/s。
本文提出了综合利用静态分析和动态分析的In-
memory fuzz testing测试方法。设计并实现了
该方法的原型Pyfuzzer。
相对传统fuzz test
您可能关注的文档
- 华宝现金添益交易型货币场基金.PDF
- 华北国家计量测试中心.PDF
- 华北平原冬小麦生长期典型农田热、碳通量特征和过程模拟.PDF
- 华北水利水电大学2019年硕士研究生入学考试初试科目考试.PDF
- 华北水利水电大学新校区图书信息中心门控系统设备.PDF
- 华灿光电股份有限公司发行股份和支付现金购买资产并.PDF
- 华蟾素抗肿瘤作用和其机制研究进展.PDF
- 华池县双塔寺安全防范工程采购项目.PDF
- 华鼎国联四川电池材料有限公司.PDF
- 华东国家计量测试中心.PDF
- 2025年中山市沙溪镇人民政府所属事业单位招聘11人笔试备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库含答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库参考答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及答案详解一套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及完整答案详解1套.docx
文档评论(0)