论文阅读笔记20230228

K-Schedular是一种新的种子调度策略,用于Fuzzing测试,它利用图centrality分析来优化种子选择顺序。该策略关注控制流图的结构以提升潜在边覆盖率,同时通过近似计数方法降低计算开销。K-Schedular考虑了边的可达性和历史变异数据,旨在提高大型控制流图的测试效率,并已开源其代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

K-Schedular: Effective Seed Scheduling for Fuzzing with Graph Centrality Analysis (SP 2022)

种子调度(Seed Scheduling)指Fuzzer选择种子的顺序,会极大地影响到一个Fuzzer的性能。现有的方法都基于历史变异数据(Historical Mutation Data)来调度种子,而忽视了控制流图(Control Flow Graph)结构对其的影响。控制流图能够帮助变异种子以覆盖到潜在的边覆盖率(Potential Edge Coverage)。

一个理想的种子调度策略应该对所有可达边(Edge)进行计数(Count),而对所有的可达边进行计数会带来巨大的开销。所以其应该估计出一个大致计数(Approximate Count),并满足以下3点要求:

  1. 如果更多的边可达,计数增加;
  2. 如果变异历史信息提示某些边难以遍历,计数减少;
  3. 对于大型的控制流图应当有较高的效率。

本文提出了K-Schedular,一种基于图分析(Graph Analysis)技术的种子调度策略。基于K-Schedular的Fuzzer工作流程如下图所示。

Fuzzer workflow with K-Schedular
论文代码已开源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值