Selecting Initial Seeds for Better JVM Fuzzing
Tianchang Gao, Junjie Chen, Dong Wang, Yile Guo, Yingquan Zhao, Zan, Wang

TL;DR
This paper investigates seed selection methods for JVM fuzzing, demonstrating that program-feature-based seed selection significantly improves bug detection efficiency and effectiveness compared to traditional methods.
Contribution
It introduces and empirically evaluates 10 seed selection methods tailored for JVM fuzzing, highlighting the superiority of program-feature-based approaches.
Findings
Program-feature-based seed selection reduces overhead to 30s.
Outperforms other methods with 142%-269% improvement.
Detects 21 confirmed or fixed bugs out of 25.
Abstract
Literature in traditional program fuzzing has confirmed that effectiveness is largely impacted by redundancy among initial seeds, thereby proposing a series of seed selection methods. JVM fuzzing, compared to traditional ones, presents unique characteristics, including large-scale and intricate code, and programs with both syntactic and semantic features. However, it remains unclear whether the existing seed selection methods are suitable for JVM fuzzing and whether utilizing program features can enhance effectiveness. To address this, we devise a total of 10 initial seed selection methods, comprising coverage-based, prefuzz-based, and program-feature-based methods. We then conduct an empirical study on three JVM implementations to extensively evaluate the performance of the seed selection methods within two SOTA fuzzing techniques (JavaTailor and VECT). Specifically, we examine…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Data Classification · Software Testing and Debugging Techniques · Data Mining Algorithms and Applications
