Proj THUDBFuzz Paper Reading: Matryoshka: Fuzzing Deeply Nested Branches
Abstract
背景: greybox fuzzing 使用广泛,但是很难到达在checksum、网络包分析和图像视频处理器中常见的,由深度嵌套的条件所限制的分支。
本文:提出Matryoshka
主要方法:
- 识别在控制流图上与目标条件语句相关的全部条件语句
- 对这些conditional statements做污点分析
- 使用三种策略来找到同时满足这些条件语句的输入
实验:
对象: 13个开源程序
竞品: AFL, QSYM, Angora
效果:
- line coverage和branch coverage都明显更高
- 41 unique new bugs, 12 CVEs
本文认为key point:
among the nesting constraints of a target conditional statement, Matryoshka collects only those that may cause the target unreachable.
Matryoshka只对那些和目标条件语句关联且会造成目标条件跳不过去的相关条件语句试着满足