Font Size: a A A

Research On Ensemble Fuzzing Technology Based On Dual-Layer Scheduling Architecture

Posted on:2024-07-03Degree:MasterType:Thesis
Country:ChinaCandidate:X P WangFull Text:PDF
GTID:2568307067973049Subject:Computer technology
Abstract/Summary:PDF Full Text Request
As a testing and vulnerability detection technique,fuzzing(fuzz testing)has been widely used in the production environments of various enterprises.However,due to its intensive generation of random input sets,it often puts performance pressure on computer systems.Additionally,different fuzzing schemes have varying adaptability for different software,or for different stages of the same software,making it difficult for testers to determine the optimal testing plan before running the tests.To address these two issues,some frameworks that can parallelize and integrate different fuzzing schemes for collective testing have emerged in academia and industry.Although these frameworks have achieved certain results,they each have some problems.For example,in a parallel environment of a single machine with multiple cores,information sharing among different fuzzing schemes still lacks efficient support.This thesis proposes a ensemble fuzzing technology based on a dual-layer scheduling architecture to solve the problem of inefficient information sharing among different fuzzing schemes.The main contributions of this thesis include:(1)proposing a heuristic global synchronization strategy,which calculates coverage achievement and diversity to achieve effective information exchange between fuzzers and improve path coverage.This strategy combines delayed synchronization with ranking systems to reduce overhead during synchronization and ensure the spread of high-quality seeds.(2)using a local synchronization strategy to implement seed scoring and synchronization within each fuzzer group to further optimize the fuzzing process.This strategy includes a seed deduplication module and a seed scoring module,which respectively eliminate redundant seeds and assign priority to seeds,making the fuzzing process more efficient.(3)designing and implementing a ensemble fuzzing system based on a dual-layer scheduling architecture,which combines global synchronization strategy with local synchronization strategy to provide a flexible and scalable solution to fully utilize existing computing resources.In order to verify the effectiveness of the prototype system proposed in this thesis,a comparative experiment is designed to test the prototype system and AFL(American Fuzzy Lop)on the standard vulnerability program test set LAVA-M and the real program ffjpeg.The experimental results show that in the 24-hour test,the number of paths found in the prototype system is 1-10 times that of AFL,the execution speed of some programs is 1-4 times that of AFL,and the number of crash files found is more than 10 times that of AFL.The experimental data fully prove the effectiveness of this research.
Keywords/Search Tags:Software Quality Assurance, Vulnerability Discovery, Fuzzing, Ensemble Fuzzing
PDF Full Text Request
Related items