Software security vulnerability detection method based on tree structure convolutional neural network

A convolutional neural network and neural network technology, applied in the field of code vulnerability prediction in software source code, can solve problems such as difficulty in handling different types of code, disadvantageous extraction of code, imperfect functions, etc.

Active Publication Date: 2019-09-13
BEIJING INSTITUTE OF TECHNOLOGYGY
View PDF4 Cites 11 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

This processing method has two major defects: (1) A significant difference between codes and human natural language is that the grammatical structure features of codes are more standardized and easier to capture than human language grammatical features, and the grammatical structure of codes also constitutes code feature information A majority
Obtaining only semantic information while ignoring the grammatical structure is a major defect, which is not conducive to extracting feature information of codes; (2) Although there are tools for automatically extracting semantic information of codes, their functions are not perfect, and these tools are relatively targeted. Difficulty dealing with different types of code
Researchers need to implement their own semantic analyzer to extract key information in the code, this research takes a lot of time, and the effect is not significant

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Software security vulnerability detection method based on tree structure convolutional neural network
  • Software security vulnerability detection method based on tree structure convolutional neural network
  • Software security vulnerability detection method based on tree structure convolutional neural network

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0018] The present invention will be described in detail below with reference to the accompanying drawings and examples.

[0019] The models based on deep learning have achieved certain results, which also shows the powerful capabilities of deep learning in the field of vulnerability detection. However, the way they analyze and process source code ignores the structural features of the code itself, which is not conducive to obtaining all the features of the code. information. The present invention first proposes to apply the convolutional neural network based on the code syntax tree structure to the research of software vulnerability detection, obtain the syntax structure and semantic information of the code through the code syntax tree structure, preprocess the features through the neural network model, and obtain the syntax tree The vector feature representation of the node (the output of the embedding layer below), and then use the convolutional neural network as a code cla...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention discloses a software vulnerability detection method based on a tree structure convolutional neural network, and the method comprises the steps: analyzing a source code to obtain an abstract syntax tree AST structure, and extracting the node type of each node in the AST structure; constructing a neural network pre-processing model containing an embeding layer, inputting the neural network pre-processing model into an extracted node type, and outputting a prediction probability of the node type; performing neural network training by using the node type; after training is completed,enabling the vector characteristic values output by the embeding layer to serve as input of a convolutional neural network model, taking whether vulnerabilities exist in source codes or not as labels, and training the convolutional neural network model to serve as a code classifier; and for the source code to be detected, extracting the node type in the AST structure of the source code, retraining the neural network preprocessing model, and inputting the vector characteristic value output by the embeding layer into the convolutional neural network model to obtain a vulnerability detection result. According to the method, the feature information in the code can be better extracted, so that a comprehensive analysis result can be given.

Description

technical field [0001] The invention relates to the technical field of code loophole prediction in software source codes, in particular to a software loophole detection method based on a tree-structured convolutional neural network. Background technique [0002] Hidden vulnerabilities in software provide an entry point for attackers, and these vulnerabilities are often caused by subtle errors left or mishandled by programmers when programming. The prevalence of open source software and code reuse has also contributed to the rapid spread of vulnerabilities. The vulnerability detection model can detect the loopholes in the software code. According to the detection results, the software developer can conduct a secondary review on those modules with a high probability of loopholes, and invest limited time and funds in a targeted manner for those modules that may have loopholes. In the testing of highly reliable software modules, the efficiency of software testing can be improve...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F21/56G06F21/57G06K9/62G06N3/04
CPCG06F21/577G06F21/563G06N3/047G06N3/045G06F18/214
Inventor 危胜军魏文媛单纯胡昌振赵敬宾
Owner BEIJING INSTITUTE OF TECHNOLOGYGY
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products