CyberGlossary

应用安全

变异模糊测试

别称: 突变式模糊测试, 基于样本的模糊测试

定义

通过对现有合法样本进行随机变异(翻转比特、插入字节、文件拼接等)来生成新测试输入的模糊测试策略。

变异模糊测试以一组合法输入(图像、网络包、文档)作为种子语料,通过比特翻转、字节替换、块删除、拼接等小幅随机修改生成新的候选输入。与基于生成的 fuzzer 不同,它无需输入格式的语法定义,因此可以快速应用到任意解析器或协议上。配合覆盖率反馈,AFL++、libFuzzer 等可以快速演化出能够深入代码路径并触发内存安全缺陷的输入。它广泛用于加固编解码器、文件解析器、内核驱动和加密库,是 SSDLC 中常见的实践。

示例

  • AFL++ 对合法 PNG 文件进行变异,以发现 libpng 中的堆溢出缺陷。
  • libFuzzer 对合法 HTTP 请求进行变异,使自研 HTTP 解析器崩溃。

相关术语