首页
社区
课程
招聘
[原创]EasyFuzzer 1.4测试版
发表于: 2014-11-10 16:15 3925

[原创]EasyFuzzer 1.4测试版

2014-11-10 16:15
3925

EasyFuzzer 从1.4版本开始,支持智能fuzz。
智能FUZZ和通用型FUZZ的区别
前面的fuzz是通用型FUZZ,在通用型FUZZ中,我们不需要对文件格式做深入了解就可以上手。比较省时省力。适合一些小型程序或者自定义文件格式。因为他们的防护比较弱。
通用型FUZZ优点是节省时间和简单,容易上手。但是对于越来越多的复杂文件格式而言,通用型FUZZ就无能为力了。因为复杂文件格式有大量的校验,结构数据检查等等,通用型的FUZZ生成的畸形样本中很难达到程序逻辑的更深层。这时候,智能FUZZ出来了。
智能fuzz做法如下:
1 学习相应文件的文件格式。
2 把文件格式写成代码,根据代码,智能fuzzer来生成符合代码约束的畸形样本。
3 把这些样本给程序,让程序去执行。
智能型fuzz和通用型fuzz的最大不同就是有代码约束,这样生成的样本就可以达到逻辑的更深层,在短时间内发现通用型fuzz不可能发现的漏洞。
EASYFUZZER支持的类型和语法规则。
到现在(1.4版本)为止,EASYFUZZER支持2种语法规则。分别是数字类型和字符串类型。下面我们分别介绍着两种类型。
_num,参数1,参数2,参数3,参数4; 如:_num,100,1,0,32;
_str,参数1,参数2,参数3 ,参数4, 参数5 ,参数6;  如:_str,helloworld,1,0,0,32,1;

代码设计规范:
如下图:
一 对于1.4版本 在我们的代码编辑区,一共可以编写256条指令,每一条指令的长度最多是256字节。
二 不同的函数的参数量是不同的,函数以_开始,如现在支持的_num和_str,要求小写。参数之间用“,”表示,要求英文半角字符。每一条指令结尾必须用“;”,仍然是英文半角字符。
三 _num有四个参数:
参数一是数值, 支持10进制类型(如 100,1234567,),也支持16进制类型(如100H,deaddeadh,)16进制字母大小写都可以,后面需要加h来和10进制数据加以区分。
参数二是数据是否可以变异,0为可以变异,1为不可以变异。变异是指以后生成的不同的样本中该数值都会进行变化。如果该数值设置成0(可以变异),那么对于参数一设置成什么值也就都没有什么区别了(参数一不进行解析了)
参数三:大小尾。 0表示小尾(小尾表示低位数据存储在低字节地址上),1表示大尾(大尾表示低位数据存储在高字节地址上)。
比如12345678H  如果是大尾,在内存中是12345678,如果是小尾,在内存中是78563412,
参数四:数值的大小,目前支持8位,16位,32位3种类型。  也就是1字节,2字节,4字节。
8位: 如AAH   16位 如AABBH  32位 如AABBCCDDH

以下表示都是正确的:
_num,11111111h,1,0,32;
_num,2222h,1,0,16;
_num,ffh,1,0,8;
_num,254,1,0,8;
_num,12345678h,1,0,32;
_num,AABBh,1,1,16;

三 _str有六个参数:
_str,helloworld,1,0,0,32,1;
参数一:字符串数值。直接填写数值即可如 helloworld。
参数二:该数值是否变化。0表示变化,1表示不变化。
参数三:字符串的长度,单位为字节。
参数四:字符串类型,0表示STR类型,1表示HEX类型。
如123456,如果是0,输出后内存中的数据是313233343536,如果是1,输出后内存的数据是123456.
参数五:前缀的大小。单位是字节数。有效值为0,8,16,32.
前缀用来表示该字符串的长度。如果您不需要该数值,设置成0就可以。
参数六:前缀的格式, 大尾或者小尾。 0表示小尾,1表示大尾。

对于MID文件格式的结构,我们可以粗略的表示成如下形式
_str,MThd,1,0,0,0,0;
_num,0,1,0,16;
_num,6,1,1,16;
_num,0,0,0,16;
_str,MTrk,1,0,0,0,0;
_str,aaaaaaaaa,0,0,0,32,0;
在后面的版本中,我还会支持更多的类型。
详细文档:http://www.asm64.com/readme/readme.mht


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 3
支持
分享
最新回复 (6)
雪    币: 2664
活跃值: (3401)
能力值: ( LV13,RANK:1760 )
在线值:
发帖
回帖
粉丝
2
support 光刃!!!
2014-11-10 16:22
0
雪    币: 56
活跃值: (34)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
多谢光刃大大的分享~
2014-11-12 12:41
0
雪    币: 349
活跃值: (125)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
4
出来顶下光头妹子的工具吧
2014-11-13 22:12
0
雪    币: 81
活跃值: (165)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
帮顶,mark
2014-11-24 19:05
0
雪    币: 6
活跃值: (1509)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
真的是妹子的话  让我们情何以堪
2014-11-24 19:20
0
雪    币: 229
活跃值: (94)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
mark学习
2014-11-24 21:24
0
游客
登录 | 注册 方可回帖
返回
//