Font Size: a A A

Research On Cross-Architecture Bug Search In Binary Executable

Posted on:2018-08-31Degree:MasterType:Thesis
Country:ChinaCandidate:W Y XuFull Text:PDF
GTID:2428330623950929Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the continuous development of computer software technology,the emergence of loopholes can not be avoided,quickly identify the vulnerability in the protection of computer systems is the key.With the ever-increasing scale and number of softwares and the widespread application of homologous software in different instruction-set architectures,the development of existing software vulnerabilities search technology can hardly meet the actual needs of the software market.At present,there are many shortcomings in the commonly used software vulnerability search methods,such as requiring software source code,testing only a single instruction set architecture software,using narrower application dynamic analysis techniques,or time-consuming semantic analysis techniques.In response to these pitfalls,software vulnerabilities need to be quickly and effectively identified at the binary level.In this paper,two aspects of research work are focused on the key issues in the binary vulnerability search of cross-instruction architecture.On the one hand,a new algorithm is proposed to efficiently search for vulnerabilities in cross-instructional architecture software and improve the accuracy of the existing binary comparison tools;on the other hand,the algorithm is compared with the graph database,big data platform In combination,the ability to handle batch alignment data and maintain vulnerability tag libraries has been enhanced.The main research results are as follows:1.Propose a multi-stage search method that can be used to efficiently search for known vulnerabilities in software.This method is characterized by being able to support known vulnerability searches of binary files across instruction-set architectures,different compilers,and compiler optimization level conditions.2.A new basic block matching algorithm is proposed.The algorithm compares the structural features of the internal control flow chart and the basic block features,and calculates the similarity between the basic block sets to determine the matching function.The time complexity of the algorithm is greatly improved compared with the matching algorithm of the basic block level.3.Implemented a tool CABS for known vulnerability search across instruction-set architectures.The tool supports x86,MIPS,ARM three instruction architecture,different compiler and compiler optimization level binary matching,can effectively search binary vulnerabilities exist.Experiments show that the method accurately searches for Heartbleed flaws in software,elevation of privilege holes in Linux tools,and backdoors that exist in router images.
Keywords/Search Tags:Binary comparison, Instruction set architecture, Vulnerability search, Feature matching, Function comparison
PDF Full Text Request
Related items