paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Gramatron: effective grammar-aware fuzzing

Gramatron:有效的语法感知模糊测试
ISSTA Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis2021匹配度 1/10 · 该论文研究语法感知模糊测试(fuzzing),属于动态测试与缺陷触发方向,与用户关注的静态分析、LLM/Agent 改进分析验证、浮点程序分析或贝叶斯程序分析均无直接关系。虽然同属程序语言/软件工程领域,但核心问题和方法都不匹配。引用 57 inbox
Prashast Srivastava, Mathias Payer
crossref: 2026-09-12

AI 速览

一句话:提出用语法自动机与激进变异算子实现快速合成复杂缺陷触发的语法感知模糊测试器。

现有语法感知模糊测试因语法结构导致采样偏差,且解析树变异仅做局部小改动,难以高效合成复杂缺陷触发。Gramatron 将语法转换为语法自动机,重构文法以无偏采样输入状态空间;并重新设计大规模激进变异算子。生成输入多样性更高,覆盖率比现有 fuzzer 提升最多 24.2%,输入生成快 98%,表示小 24%,变异激进 6.4 倍且快 68%。在三个解释器、10 个已知缺陷上优于两种 Nautilus 变体;10 天真实部署发现 10 个新漏洞。

问题
语法感知模糊测试难以高效合成复杂 bug 触发,主要受语法结构引起的采样偏差和解析树变异局部化限制。
方法
构建 grammar automaton 以无偏采样输入状态空间,并重新设计更大规模、更激进的语法感知变异算子。
评估
在三个解释器与 10 个已知 bug 上对比两个 Nautilus 变体,并开展 10 天真实模糊测试活动;报告覆盖率、生成速度、输入大小、变异效率及新漏洞发现。
原文摘要(Abstract)

Fuzzers aware of the input grammar can explore deeper program states using grammar-aware mutations. Existing grammar-aware fuzzers are ineffective at synthesizing complex bug triggers due to: (i) grammars introducing a sampling bias during input generation due to their structure, and (ii) the current mutation operators for parse trees performing localized small-scale changes. Gramatron uses grammar automatons in conjunction with aggressive mutation operators to synthesize complex bug triggers faster. We build grammar automatons to address the sampling bias. It restructures the grammar to allow for unbiased sampling from the input state space. We redesign grammar-aware mutation operators to be more aggressive, i.e., perform large-scale changes. Gramatron can consistently generate complex bug triggers in an efficient manner as compared to using conventional grammars with parse trees. Inputs generated from scratch by Gramatron have higher diversity as they achieve up to 24.2% more coverage relative to existing fuzzers. Gramatron makes input generation 98% faster and the input representations are 24% smaller. Our redesigned mutation operators are 6.4× more aggressive while still being 68% faster at performing these mutations. We evaluate Gramatron across three interpreters with 10 known bugs consisting of three complex bug triggers and seven simple bug triggers against two Nautilus variants. Gramatron finds all the complex bug triggers reliably and faster. For the simple bug triggers, Gramatron outperforms Nautilus four out of seven times. To demonstrate Gramatron’s effectiveness in the wild, we deployed Gramatron on three popular interpreters for a 10-day fuzzing campaign where it discovered 10 new vulnerabilities.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot6690,
  title = {Gramatron: effective grammar-aware fuzzing},
  author = {Prashast Srivastava and Mathias Payer},
  booktitle = {ISSTA},
  year = {2021},
  doi = {10.1145/3460319.3464814}
}