Font Size: a A A

Vulnerability Mining Research Based On Distributed Fuzzing

Posted on:2019-04-13Degree:MasterType:Thesis
Country:ChinaCandidate:Y J DengFull Text:PDF
GTID:2416330611493281Subject:Army commanding learn
Abstract/Summary:PDF Full Text Request
Fuzzing technology is an effective method for exploiting vulnerabilities.This paper analyzes the characteristics and existing problems of current fuzzing technology,combines fuzzing technology with distributed technology,and designs distributed fuzzing system to improve the efficiency of vulnerability mining.A fuzzing method based on dynamic fitness function is proposed.Considering the newness of the seed and the depth of the execution path,the fitness function is dynamically changed according to the test phase,and the seed is quantitatively calculated according to the dynamic fitness function.The selected probability and the number of test cases are generated,which completes the steps of generating test cases by genetic algorithm,which better solves the problem that the test cases existing in the current fuzzing technology converge too early,resulting in insufficient path coverage,and designed the fuzzing tool DynFuzzer based on dynamic fitness.A distributed fuzzing task allocation strategy based on state clustering is proposed.Firstly,the initial state space of the target program is obtained by a large number of random tests.Then the initial state space is divided into independent state subspaces according to the path prefix,and the corresponding The task is distributed to each test node;finally,the path constraint is used to control the direction of the mutation,and the state space detected by each test node is independent of each other.Through the above task assignment strategy,the fuzzing tasks can be distributed to each test node without being repeated,which solves the problem that the current distributed fuzzing test node task repetition leads to low test efficiency,and designed the distributed fuzzing platform can realize a combination of multiple fuzzing tools.The paper uses BegBunch,CGC and libtiff library to design multiple sets of comparative experiments for the test set,which proves the validity of the proposed dynamic fitness function and state clustering based task allocation strategy.Finally,the developed fuzzing tool DynFuzzer was deployed on the distributed fuzzing system to verify the four disclosed vulnerabilities CVE-2015-8870,CVE-2018-15607,CVE-2018-9165 and CVE-2018-1000222.It proves the practicality of this research in the field of actual vulnerability mining.
Keywords/Search Tags:fuzzing, distributed system, dynamic fitness function, state clustering, task assignment strategy
PDF Full Text Request
Related items