Fuzzing JavaScript Engines with Aspect-Preserving Mutation
Explore advanced techniques for fuzzing JavaScript engines through a conference talk that delves into aspect-preserving mutation. Learn about the challenges of finding JavaScript bugs and the special conditions required to uncover new vulnerabilities from existing ones. Discover the DIE (Dynamic analysis, Input generation, and Execution) overview, including preprocessing for typed-AST, type analysis through dynamic and static methods, and input generation. Examine aspect-preserving mutation techniques, focusing on type-preserving and structure-preserving mutations. Gain insights into the implementation process, real-world fuzzing of JS engines, and evaluation of the effectiveness of leveraging aspects. Analyze a case study on CVE-2019-0990 and compare the presented approach with state-of-the-art fuzzers. Enhance your understanding of advanced security testing methodologies for JavaScript engines in this informative IEEE presentation.