手机版

Fuzzing-用SPIKE挖掘漏洞(11)

发布时间:2021-06-08   来源:未知    
字号:

详细介绍了fuzzing 工具spike自动化挖掘漏洞的过程

注意,字符串“UNKNOWN COMMAND”正是由我们发往服务器,然后又被服务返回给客户端。Vulnserver在接收到SPIKE的数据后,还可以返回一response数据,这表明它很稳定,并没在崩溃的边缘。稍后当我们真正引发程序崩溃的时候,这段信息将变得非常重要。

我们看一下下一个请求,在Follow TCP Stream窗口底部点击Filter Out This Stream按键,在Wireshark新的过滤视图中右击然后选择Follow TCP Stream选项。这时我们会看到一些有趣的东西。在上一个请求的“COMMAND”文档中,在插入其他随机字符串之前,SPIKE插入了一个非常长的由A组成的字符串。如图:

如果好奇,你可以继续过滤其他SPIKE发送的Fuzzing 数据(Filter Out This Stream)。我们主要需要理解的是每次使用s_string_variable命令,SPIKE将发送括号中的数据,然后再用fuzz 列表迭代发送,直到发完为止。如有你的脚本里有多个变量,他将反过来为每一个变量遍历所有可能值,变量将被括号中提供的值依次替换。

我们能做的是参考一个脚本创建生成多个独立的SPIKE脚本。若想测试固定类型数据,如各种命令( STATS, RTIME, LTIME等),我们必须使用个别SPIKE脚本(如是s_string)来定制他的数据结构。

本文表述了运行一个SPIKE脚本的基本流程,但是Vulnserver仍有许多可以fuzz测试的地方,尽管有些看起来不方便执行和监控崩溃状态。

我们所需要的是在大量发送SPIKES fuzzing数据的同时,可以详细记录返回的细节,并在程序生成崩溃的时候可以停下来。SPIKES在程序发生崩溃的时刻可以下来,让我们可以细细地分析输入数据,当再次启动程序时,它会从中断处继续fuzzing下去。

幸运的是,我们可以在fuzzing测试的过程中修改数据。下面概括了我们如何处理fuzzing任务的其他部分。

1、我们为每一段我们想fuzz的信息生成相应的.spk文件。在这种情况下,我们可以为每一个可用的命令生成.spk文件,如 STATS, RTIME等。我们也可以给予这些SPIKE脚本连续的文件名,添加额外的命令到脚本中,这样我们可以从SPIKE得到额外的终端输出信息。

Fuzzing-用SPIKE挖掘漏洞(11).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)