paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Fuzzing JavaScript Interpreters with Coverage-Guided Reinforcement Learning for LLM-Based Mutation

基于覆盖率引导强化学习与LLM变异的JavaScript解释器模糊测试
ISSTA Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis2024匹配度 4/10 · 该论文将LLM与强化学习结合用于JavaScript解释器模糊测试,属于LLM辅助的动态程序测试/缺陷发现,与用户关注的静态分析、形式化验证、浮点程序分析和贝叶斯程序分析没有直接交集;仅共享“LLM作为程序分析工具”的宽泛思路。引用 32 inbox
Jueon Eom, Seyeon Jeong, Taekyoung Kwon
crossref: 2026-09-12

AI 速览

一句话:提出CovRL-Fuzz,用覆盖率反馈强化学习引导LLM变异,提升JavaScript解释器模糊测试覆盖与缺陷发现。

JavaScript解释器对现代浏览器至关重要,但严格的语法要求使模糊测试输入生成困难。现有基于语言模型的上下文感知变异虽有前景,却缺乏覆盖率引导。本文提出CovRL技术,将大语言模型与来自覆盖率反馈的强化学习结合。CovRL-Fuzz利用TF-IDF构建加权覆盖率图,并据此计算模糊测试奖励,再通过强化学习更新基于LLM的变异器,从而生成更可能探索新覆盖区域的测试用例,同时减少语法与语义错误,且无需额外后处理。评估表明,CovRL-Fuzz在提升代码覆盖率和识别JavaScript解释器缺陷方面优于当前最优模糊测试器;它在最新解释器中发现了58个真实安全相关缺陷,包括50个此前未知缺陷和15个CVE。

问题
JavaScript解释器需要有效模糊测试来发现安全缺陷,但严格语法使输入生成困难,现有LLM变异方法缺乏覆盖率引导,难以充分探索新路径。
方法
提出CovRL-Fuzz,将覆盖率反馈通过TF-IDF加权覆盖率图转化为强化学习奖励,并用该奖励训练LLM变异器,以生成高覆盖且语法语义更可靠的测试用例。
评估
在最新JavaScript解释器上与当前最优模糊测试器比较代码覆盖率和缺陷发现能力,并统计发现真实安全缺陷、未知缺陷与CVE的数量。
原文摘要(Abstract)

JavaScript interpreters, crucial for modern web browsers, require an effective fuzzing method to identify security-related bugs. However, the strict grammatical requirements for input present significant challenges. Recent efforts to integrate language models for context- aware mutation in fuzzing are promising but lack the necessary coverage guidance to be fully effective. This paper presents a novel technique called CovRL (Coverage-guided Reinforcement Learning) that combines Large Language Models (LLMs) with Reinforcement Learning (RL) from coverage feedback. Our fuzzer, CovRL-Fuzz, integrates coverage feedback directly into the LLM by leveraging the Term Frequency-Inverse Document Frequency (TF-IDF) method to construct a weighted coverage map. This map is key in calculating the fuzzing reward, which is then applied to the LLM-based mutator through reinforcement learning. CovRL-Fuzz, through this approach, enables the generation of test cases that are more likely to discover new coverage areas, thus improving bug detection while minimizing syntax and semantic errors, all without needing extra post-processing. Our evaluation results show that CovRL-Fuzz outperforms the state-of-the-art fuzzers in enhancing code coverage and identifying bugs in JavaScript interpreters: CovRL-Fuzz identified 58 real-world security-related bugs in the latest JavaScript interpreters, including 50 previously unknown bugs and 15 CVEs.

链接与引用

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

BibTeX
@inproceedings{paperbot8570,
  title = {Fuzzing JavaScript Interpreters with Coverage-Guided Reinforcement Learning for LLM-Based Mutation},
  author = {Jueon Eom and Seyeon Jeong and Taekyoung Kwon},
  booktitle = {ISSTA},
  year = {2024},
  doi = {10.1145/3650212.3680389}
}