Fuzz数据生成是软件漏洞挖掘的关键步骤。以下是一些常用的Fuzz数据生成方法:

  1. 基于包格式描述的Fuzz数据生成: 在已知包格式的情况下,可以使用Fuzz工具描述包格式,并生成相应的Fuzz数据。
  2. 基于网络嗅探的Fuzz数据生成: 通过网络嗅探获取数据包,并根据数据包结构自动生成测试数据。
  3. 基于程序流程分析的Fuzz数据生成: 通过分析程序流程结构,针对各个分支构造Fuzz包。例如,Google的Bunny工具结合编译器,自动遍历程序路径并生成Fuzz数据。
  4. 基于统计分析的Fuzz数据生成: 通过统计分析自动识别协议包,并构造Fuzz包。