首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修改AFL以包括一个新的变量,以便Fuzzer在种子选择中考虑

修改AFL以包括一个新的变量,以便Fuzzer在种子选择中考虑
EN

Stack Overflow用户
提问于 2021-03-25 14:18:25
回答 1查看 61关注 0票数 0

我期待着理解AFL如何实现其种子选择。据我所知,afl-fuzz.c有一个名为has_new_bits的函数,它返回值来标识输入的结果是否创建了新路径、新边,或者它是否不是我们正在考虑的有趣分支。所以我的问题是,假设我能够插入一些代码行,允许我插入变量,例如计数器,我可以插入其他代码行,这些代码将在给定的分支中递增,我如何修改AFL,使其能够检测到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-19 20:33:03

在AFL++中,您可以使用__afl_coverage_interesting直接影响覆盖率位图。例如,您可以使用计数器的值来计算val参数(但请记住val是u8)。

另一种方法是使用FuzzFactory,这是AFL的一个修改版本,允许用户定义自定义覆盖指标。在他们的paper中,作者讨论了FuzzFactory可以使用的一种可能的覆盖指标,即有效性。对于有效性,模糊器选择具有更多概率的有效输入。你可以绕过它,制作一个FuzzFactory版本,专注于触发不安全代码的输入,而不是有效的输入。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66794072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档