摘要: ## Abstract 背景: Coverage-based Greybox Fuzzing很有用,但是并非全部增长的coverage都和bug直接相关。 Directed Fuzzer将时间直接花费在到达程序的确定位置上,非常适宜于patch testing, bug reproduction, 阅读全文
posted @ 2021-03-08 20:55 雪溯 阅读(502) 评论(0) 推荐(0) 编辑
摘要: Abstract Fuzzing-1. symbolic execution 2. random input generation Intro Blockbox fuzzing mutational generational: Peach Greybox fuzzing: 需用到程序插桩 Sanit 阅读全文
posted @ 2021-03-08 19:21 雪溯 阅读(91) 评论(0) 推荐(0) 编辑
摘要: Abstract 目的: 尽量通过于一检查 工具: Skyfire 特色:使用现有的code samples学习概率性CFG,再用之生成分布很好的种子 实验: 将Skyfire生成的种子输入AFL中 对象: XSLT, XML引擎 效果: 能生成well-distributed inputs 极大增 阅读全文
posted @ 2021-03-08 18:19 雪溯 阅读(134) 评论(0) 推荐(0) 编辑
摘要: Abstract 目的: 生成更可能导致memory corruption的bugs key: 新mutation strategy- TIFF(Type-Inference-based Fuzzing Framework) 思路: 推测input bytes的类型 步骤: 为每个byte标上bas 阅读全文
posted @ 2021-03-08 18:10 雪溯 阅读(103) 评论(0) 推荐(0) 编辑
摘要: Abstract 目标: 生成语法语义有效的JS code snippets 工具: CodeAlchemist 算法: semantics-aware assembly 效果: 在JS引擎中找到了很多bugs 1. Intro P1: js引擎使用广泛 P2: js安全重要 P3: 成功的JS F 阅读全文
posted @ 2021-03-08 18:02 雪溯 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Abstract 目的: 生成语法语义有效的test case 工具: Superion, AFL的拓展 特色: grammar-aware; coverage-based; graybox 特别输入: 语法 方法: grammar-aware trimming strategy: 在树的层次直接缩 阅读全文
posted @ 2021-03-08 17:38 雪溯 阅读(214) 评论(0) 推荐(0) 编辑
摘要: Abstract 目标: 生成有效种子 方法: 通过AFL识别input validity checks和对应这些checks的input fields 进一步将这些checks按照其与输入的相关性进行分类,包括数学运算关系;object offset; data structure length等 阅读全文
posted @ 2021-03-08 17:28 雪溯 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Abstract 背景: Grammar Inference, 能够自动生成输入文法的技术。目前缺点: 一般是预先分析的,在fuzzing过程中的一些重要structures常常无法捕捉到 本文: 工具: GRIMOIRE 特点: 无需任何人工干预,无需预分析步骤,通过类似语法的组合和大量变异来生成 阅读全文
posted @ 2021-03-08 16:44 雪溯 阅读(268) 评论(0) 推荐(0) 编辑
摘要: Abstract 背景: 大多数fuzzers对input format不敏感 fuzzers对每个byte变异的概率相同 本文: a field-aware mutation strategy 目标: 生成更少但是更有效的测试用例 方法: 从种子中抽取field信息和type信息 让变异工作在fi 阅读全文
posted @ 2021-03-08 16:36 雪溯 阅读(77) 评论(0) 推荐(0) 编辑
摘要: Abstract 工具: Zest 目的:自动引导像QuickCheck这类的随机输入生成器更好地通过语义分析 步骤: 将random-input generators转化为确定性的参数生成器 借助code coverage和input validity来做feedback-directed par 阅读全文
posted @ 2021-03-08 16:13 雪溯 阅读(322) 评论(0) 推荐(0) 编辑
摘要: Abstract 本文工具: AFLSmart 算法: smart greybox fuzzing 方法: 利用种子文件中的结构表示来产生新的测试文件;定义在虚拟文件结构上,不会损伤文件结构的新变异算子;定义validity-based power schedule来生成更有可能进入更深层逻辑的测试 阅读全文
posted @ 2021-03-08 15:37 雪溯 阅读(87) 评论(0) 推荐(0) 编辑
摘要: Abstract 工具: *Smith 特点: 接受语义和语法规则说明,输出有效兼容性的测试程序 此外,还能对搜索空间尽可能剪枝,让创建过程尽可能local 实验: 对C, Lua, SQL和SMT-LIB2展示了4个Case studies,说明*Smith能够在语法规则相差较大的程序语言上正常工 阅读全文
posted @ 2021-03-08 14:59 雪溯 阅读(70) 评论(0) 推荐(0) 编辑
摘要: Abstract 背景: 目前的方法难以产生达到PoC或者单元测试质量的高质量测试集合 本文: aspect-preserving mutation key: 随机地保留所需properties(aspects) 具体来说: structure & type preservation 工具: DIE 阅读全文
posted @ 2021-03-08 14:49 雪溯 阅读(110) 评论(0) 推荐(0) 编辑