Binary Firmware Static Vulnerability Mining Based on Semantic Attributes and Graph Embedding Network
摘要
For static vulnerability detection technology, traditional machine learning vulnerability detection methods mostly use abstract syntax trees as code representations. This will ignore semantic information such as code logical structure and data flow direction, which will ultimately affect the accuracy of vulnerability detection. In response to the above problems, this paper proposes a new attribute program slicing graph (APSG), which uses program slicing to simplify the structure of the graph based on the program dependency graph, and it also retains the semantic attributes of nodes. In addition, this article also uses graph embedding network to extract feature vectors and builds multiple neural network prediction models according to different vulnerability types, and finally achieves function-level vulnerability existence and type prediction for unknown binary files. Experiments have proven that the vulnerability prediction method proposed in this article is more accurate in predicting the existence and type of vulnerabilities than the existing binary vulnerability detection methods.