AFL学习
weixin_43820701
这个作者很懒,什么都没留下…
展开
-
AFL学习(二)变异策略
根据afl白皮书的说法,afl-fuzz大部分的(尤其是前期的)工作都是高度确定的(highly deterministic),random havoc和test case splicing只在后期的部分进行。确定性的策略包括:1.bitflip,位反转即按位进行翻转,0变1,1变0。根据翻转量/步长,按位翻转的策略有以下几种bitflip 1/1,每次翻转1个bit,按照每1个bit的步长从头开始bitflip 2/1,每次翻转相邻的2个bit,按照每1个bit的步长从头开始bitflip原创 2020-12-05 10:56:38 · 4547 阅读 · 0 评论 -
AFL学习(一)对于AFL插桩的理解
前言最近刚刚接触AFL(american fuzzy lop),打算先通过阅读AFL源码来进行学习,在读源码之前我看了看AFL技术白皮书(Technical “whitepaper” for afl-fuzz),本文主要写一下我目前对于AFL插桩的粗浅理解,如有错误,恳请指正。参考资料:白皮书原文一、代码覆盖率及其相关概念在介绍AFL插桩之前,先简单介绍一下相关的基本概念1.代码覆盖率代码覆盖率是一种度量代码的覆盖程度的方式,也就是指源代码中的某行代码是否已执行。其计量方式很多,但无论是GCC原创 2020-11-08 12:08:01 · 4108 阅读 · 2 评论