Font Size: a A A

Research On Binary Fuzzing Technology Based On Deep Learning

Posted on:2022-04-24Degree:MasterType:Thesis
Country:ChinaCandidate:L LiuFull Text:PDF
GTID:2518306572459734Subject:Computer technology
Abstract/Summary:PDF Full Text Request
With the development of computer technology,the application of computer software is more and more extensive,and if the vulnerability in the software can not be solved in time,the malicious attack will have serious consequences.Especially firmware,a special software developed for embedded devices,firmware vulnerabilities will bring negative effects on daily life and industrial production.Vulnerability detection is an important method to prevent malicious attacks by discovering hidden vulnerabilities in programs and repairing them in advance.Coverage-guided fuzzing is a widely used vulnerability detection method at present.It automatically constructs random input cases to test the target program and tries to trigger potential vulnerabilities in the program.This method spends a lot of testing time in the non-fragile path,leading to blind and inefficient vulnerability mining.In order to solve the blindness and inefficiency of Coverage-guided fuzzing,this paper proposes a binary fuzzing method based on deep learning.The main research contents are as follows:First,the vulnerability detection method based on binary program assembly instruction sequence is studied.The assembly instruction sequence of binary program is extracted,and a large number of fragile samples and safe samples are collected to form a data set.Deep learning technology is used to learn the assembly semantic pattern of vulnerability from the data set,and the classification model is trained to realize the vulnerability detection of the assembly instruction sequence.Second,the program vulnerability classification model is used to guide fuzzing testing based on path coverage.The trained program vulnerability classification model is used to classify the vulnerability of the paths covered in the fuzzing test,and the seed mutation strategy and seed selection strategy are improved to prioritize and centrally test the paths classified as vulnerable,so as to improve the ability of vulnerability detection in the fuzzing test.Finally,QEMU simulation tool combined with peripheral interface simulation technology is used to complete the simulation of the firmware environment,to solve the problem of firmware dependence on the environment,and to realize the fuzzing testing of binary firmware vulnerability guidance.The experimental results show that the binary fuzzing testing method based on deep learning can effectively mine the vulnerabilities in binary software and binary firmware,and the execution efficiency is not much different from the existing fuzzing testing methods.
Keywords/Search Tags:fuzzing, deep learning, vulnerability detection, binary vulnerability detection
PDF Full Text Request
Related items