昨天的论文推荐中,我们介绍了来自柏林工业大学的研究人员的相关论文,今天我们继续关注一篇有柏林工业大学研究人员参与的非常实际的研究论文,发表于2020年的WOOT workshop
作者的主要考虑了AFL在2017年之后就停止更新,后面的很多优秀研究成果没法被合并进来,因此他们维护了这个AFL的女儿——AFL++框架
这篇论文的主要贡献包括
提出了一个新的fuzzing框架 AFL++:
-
AFL++提供了一个可用的fuzzing工具,结合了许多前沿fuzzing技术
-
AFL还提供了一种新颖的可自定义的变异API(Custom Mutator API),研究人员能够轻松将自己设计的Mutator应用到AFL上,或和其他Mutators结合起来。
-
评估了许多结合起来的fuzzing技术组合,评估结果体现了fuzzing技术的target-dependency.
作者选取了如下六种AFL++配置,并利用FuzzBench来评估性能。
FuzzBench为所有感兴趣的项目提供固定的21个目标的模糊评估,作者根据他们的特征从21个中挑选了9个显示出不同的行为的目标。
-
Default : AFL with some fixes
-
MOpt: 3.2.3提到的有效的突变器
-
Ngram4: 另一种工具,将4个基本块解释为唯一路径。
-
RedQueen: Fuzzer的另一个反馈通道,可以到达更深的深度。
-
Ngram4, Rare: Ngram4 和 Rare Schedule 组合。
-
MOpt, RedQueen MOpt mutation 和 RedQueen 组合
利用上述六组组合,作者尝试证明:
-
把MOpt和Ngram4当成可能的技术实例,那么把他们组合起来能产生有用的效果。
-
在运行期间,所有的fuzzing行为都是针对特定行为的,因此选择合适的配置非常重要。
项目主页:
https://aflplus.plus/
https://github.com/AFLplusplus
论文PDF:
https://www.usenix.org/system/files/woot20-paper-fioraldi.pdf
原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 学术论文推荐 2021-08-18
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论