[02]剑指安全之巅:知识普及之模糊测试的新生

Posted 鸿渐之翼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[02]剑指安全之巅:知识普及之模糊测试的新生相关的知识,希望对你有一定的参考价值。

CSDN:知柯信息安全&鸿渐之翼

往期精选:

[01]剑指安全之巅:知识普及之浅谈模糊测试,深入安全漏洞挖掘方法
我的二进制安全学习路线如何成为一个高质量黑客?谈谈我的二进制安全学习路线

狩猎者网络安全旗下-知柯™️信息安全

模糊测试的历史

—>BartonMiller时代

追溯到1989年,Barton Miller教授为了测试UNIX程序,他开发了一个模糊测试工具。
最早的测试比较粗糙,通过向目标应用程序抛出随机字符串。

–>PROTOS

1999年,Oulu大学开始开发PROTOS

–>Microsoft微软收购PROTOS

2002年Microsoft为PROTOS提供了资金支持,2003年,PROTOS团队开发了 Codenomicon,
他们是一个商业用模糊测试集的公司。
->重要里程碑:Dave Aitel开源模糊测试工具SPIKE
模糊测试开源框架SPIKE采用了比Miller模糊测试器更高级的方法,
SPIKE功能描述:
1.随机生成数据
2.预定义函数,函数可以产生常见的协议与数据格式。

–>Aitel开发的shareFuzz工具

shareFuzz通过使用共享库来挂起函数调用,通过函数返回长字符串寻找缓冲区溢出。

–>2004年,Michal Zalewski® 发布了mangleme® Web浏览器模糊测试工具

mangleme®通过CGI脚本产生在浏览器中不断刷新的html文件

–>顶级“黑客”H.D.Moore与Aviv Raff开发了动态HTML脚本

–>2004年文件模糊测试的兴起

Microsoft微软在2004年发布了公告MS04-28安全公告,详细描述了JPG文件引擎中的缓冲区溢出漏洞。
文件的安全同时影响着网络安全

–>2005年,Mu Security公司开发了一个硬件模糊测试工具,提供了商业模糊测试解决方案。

–>2006年,Active X 模糊测试

Active X插件在微软的Explor浏览器中经常使用,此类程序容易被人RCE(远程代码执行)操作。
同时David Zimmer发布了COMRaider , H.D.Moore发布了AxMan®在业界产生了巨大的影响。
##模糊测试阶段(步骤)
1.识别目标
识别目标需要关注该软件的开发周期,与漏洞历史。
选择该软件的目标文件或者库文件。
2.识别输入
任何输入到软件内的数据都可以被认为是输入向量(模糊测试向量)
3.生成数据
识别到输入向量,模糊测试器
4.执行数据
通过自动化的方式发送数据到目标应用程序、打开文件或者目标进程
5.监视异常
用于监视程序是否发生崩溃的功能
6.可利用性
人工判定该漏洞是否可以被利用

模糊测试缺陷

访问控制缺陷

模糊测试并不清楚程序逻辑,可能会因为随机性,能获得其他预料之外的测试结果。

后门

在测试密码登陆系统的时候,它只能发现输入异常,却不能通过随机发送数据的方式获得密码。

内存破坏

例如汇编指令:mov %ecx,(%eax)
模糊测试器会发送带有某种格式的字符,如果发送了%n字符,eax寄存器将包含一些来自栈的垃圾字。
该指令会触发SIGSEGV信号,从而杀死进程派生新进程。

阶段性漏洞

模糊测试只针对一个漏洞,对于多漏洞的软件,模糊测试作用有限。如何提高模糊测试的效率与范围是值得考究的问题。

以上是关于[02]剑指安全之巅:知识普及之模糊测试的新生的主要内容,如果未能解决你的问题,请参考以下文章

知识普及:关于Fuzzing模糊测试入门原理及实践的讨论

网络安全-好用的模糊测试器汇总与思考

《浪潮之巅》有感

动态SQL之模糊查询

模糊测试之实例讲解

GO语言(二十九):模糊测试(下)-