基于反馈驱动的Fuzz工具设计
发布时间:2021-11-22 11:37
模糊测试(FUZZ)是发现软件、系统安全漏洞的最效技术,本文讨论了基于反馈驱动的Fuzz工具设计原理以及具体实现方法。通过对被模糊测试的目标程序的基本块在编译时进行插桩,可以在程序运行时得到运行时覆盖的路径信息,并将覆盖的路径信息反馈给Fuzz,Fuzz通过自主实现的编译策略,从而进行更高效的变异,覆盖到更多的路径,提高路径的覆盖率,提高漏洞挖掘的效率。以开源软件作为被测试对象,通过模糊测试可以复现目标程序历史漏洞,并可以发现新的未知漏洞。
【文章来源】:科学技术创新. 2020,(32)
【文章页数】:2 页
【部分图文】:
调用回溯
通过对该函数代码进行分析,对e->s_handler的复制存在于下面的代码中,如图4所示。函数对判断len的大小,只要len大于0并且len小于256就会通过malloc分配一段内存,并将堆内存指针赋给e->s_handler,但是这里没有考虑len等于0的情况,当len等于0,就会直接跳过申请内存,然后直接对e->s_handler进行写操作,并没有判断是否等于0的情况,因此造成空指针解引用,如图5所示。
函数对判断len的大小,只要len大于0并且len小于256就会通过malloc分配一段内存,并将堆内存指针赋给e->s_handler,但是这里没有考虑len等于0的情况,当len等于0,就会直接跳过申请内存,然后直接对e->s_handler进行写操作,并没有判断是否等于0的情况,因此造成空指针解引用,如图5所示。因为len等于0,因此不会进入for循环,所以崩溃发生在最后一行。
【参考文献】:
期刊论文
[1]软件安全漏洞挖掘的研究思路及发展趋势[J]. 文伟平,吴兴丽,蒋建春. 信息网络安全. 2009(10)
[2]一种基于fuzzing技术的漏洞发掘新思路[J]. 邵林,张小松,苏恩标. 计算机应用研究. 2009(03)
[3]基于Fuzzing的ActiveX控件漏洞发掘技术[J]. 吴毓书,周安民,吴少华,何永强,徐威. 计算机应用. 2008(09)
本文编号:3511609
【文章来源】:科学技术创新. 2020,(32)
【文章页数】:2 页
【部分图文】:
调用回溯
通过对该函数代码进行分析,对e->s_handler的复制存在于下面的代码中,如图4所示。函数对判断len的大小,只要len大于0并且len小于256就会通过malloc分配一段内存,并将堆内存指针赋给e->s_handler,但是这里没有考虑len等于0的情况,当len等于0,就会直接跳过申请内存,然后直接对e->s_handler进行写操作,并没有判断是否等于0的情况,因此造成空指针解引用,如图5所示。
函数对判断len的大小,只要len大于0并且len小于256就会通过malloc分配一段内存,并将堆内存指针赋给e->s_handler,但是这里没有考虑len等于0的情况,当len等于0,就会直接跳过申请内存,然后直接对e->s_handler进行写操作,并没有判断是否等于0的情况,因此造成空指针解引用,如图5所示。因为len等于0,因此不会进入for循环,所以崩溃发生在最后一行。
【参考文献】:
期刊论文
[1]软件安全漏洞挖掘的研究思路及发展趋势[J]. 文伟平,吴兴丽,蒋建春. 信息网络安全. 2009(10)
[2]一种基于fuzzing技术的漏洞发掘新思路[J]. 邵林,张小松,苏恩标. 计算机应用研究. 2009(03)
[3]基于Fuzzing的ActiveX控件漏洞发掘技术[J]. 吴毓书,周安民,吴少华,何永强,徐威. 计算机应用. 2008(09)
本文编号:3511609
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3511609.html
最近更新
教材专著