paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Critical Variable State-Aware Directed Greybox Fuzzing

关键变量状态感知的定向灰盒模糊测试
ICSE 2025 IEEE/ACM 47th International Conference on Software Engineering (ICSE)2025匹配度 3/10 · 论文属于静态分析与定向模糊测试的交叉,关注程序状态和关键变量,但未涉及用户画像中的核心方向:LLM/Agent 与静态分析的结合、ML 系统/Agentic 程序分析、浮点程序分析或贝叶斯程序分析。仅在广义程序分析/测试上与用户背景有较弱关联。引用 2 inbox
Xu Chen, Ningning Cui, Zhe Pan, Liwei Chen, Gang Shi, Dan Meng
crossref: 2026-09-12

AI 速览

一句话:提出 CSFuzz,通过静态分析提取目标相关关键变量并监控其运行时状态,实现状态感知的定向灰盒模糊测试。

定向模糊测试能将测试引导至用户指定的目标点,但仅以新边覆盖为反馈会忽略目标点附近的程序状态,导致复杂漏洞难以触发。本文提出 CSFuzz:首先通过静态分析从程序中提取与目标点相关的关键变量;随后在运行时监控这些关键变量的取值,并自适应划分其值域来推断与目标相关的程序状态,从而将触发新状态的种子存入状态语料库;最后利用动态调度技术在不同语料库间选择并优先排序种子,以更充分地测试目标点。作者实现了 CSFuzz 原型,并在两个基准及广泛模糊测试的真实软件上评估,结果显示其漏洞检测能力优于当前最优模糊器,最高加速达 219%,并发现 4 个新缺陷,其中 2 个获得 CVE 编号。

问题
定向模糊测试虽能覆盖目标点附近代码,但仅关注新边覆盖会忽视与目标相关的程序状态,导致复杂漏洞无法被触发。
方法
静态分析提取目标点相关关键变量,运行时监控其取值并自适应划分值域以推断目标相关状态,将触发新状态的种子存入状态语料库,再用动态调度选择语料库并优先排序种子。
评估
实现 CSFuzz 原型,在 2 个基准和广泛模糊测试的真实软件上评估,与当前最优模糊器比较漏洞检测能力,并报告新发现缺陷与 CVE 编号。
原文摘要(Abstract)

Directed fuzzing is an effective software testing method that guides the fuzzing campaign towards user-defined target sites of interest, enabling the discovery of vulnerabilities relevant to those sites. However, even though the generated test cases cover the code near the target sites, complex vulnerabilities remain untriggered. By focusing only on test cases that cover new edges, the program states related to the targets are overlooked, resulting in insufficient testing of the targets and failure to capture complex vulnerabilities. In this paper, we propose a novel directed fuzzing solution named CSFuzz, which considers program states associated with the targets. First, CSFuzz extracts critical variables related to the target sites from the program using static analysis. Then, CSFuzz monitors the runtime values of these critical variables and infers the program states associated with the targets by adaptively partitioning the range of variable values. This allows CSFuzz to store interesting seeds in the state corpus that trigger new states near the target sites. Lastly, CSFuzz employs dynamic scheduling techniques to guide the fuzzing campaign in selecting different corpora and prioritizing seeds. This ensures more adequate testing of the target sites. We have implemented a prototype of CSFuzz and evaluated it on 2 benchmarks and widely fuzzed real-world software. Evaluation results show that CSFuzz outperforms state-of-the-art fuzzers in terms of vulnerability detection capability, achieving a maximum speedup of 219%. Moreover, CSFuzz has discovered 4 new bugs, including 2 CVE IDs assigned.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot8900,
  title = {Critical Variable State-Aware Directed Greybox Fuzzing},
  author = {Xu Chen and Ningning Cui and Zhe Pan and Liwei Chen and Gang Shi and Dan Meng},
  booktitle = {ICSE},
  year = {2025},
  doi = {10.1109/icse55347.2025.00219}
}