FUZZ初学笔记(二)
测试数据生成和模糊启发式
如何生成测试数据的实现方法只是待解决问题的一部分,同等重要的是决定生成什么样的测试数据。比如,我们正在创建一个模拟器以分析一个FTP服务的健壮性,在进行FTP的请求中,我们要加以研究的是数据传输格式和FTP服务器接收后对数据的处理方式模糊启发式
在模糊字符串或者模糊数据列表中所包含的特定的潜在危险值,称为模糊启发式(fuzzheuristics)
2.1 整形值:在新的改进整形测试试用列表中,选择两个极限边界(0和0xFFFFFFFF)测试用例是很明显的,可能所提供的数字被作为内存分配程序的大小参数。通常额外空间被指定大小所容纳一个头,尾或者终止空字节,例如:
int size = read_ccr_size(packet);
//save space for NULL termination
buffer = (char *)malloc(size + 1);
从上面的来看的话,大小是从packet里面获取,当然一般大小是不会这样由用户进行分配,这