Method for analyzing taint propagation path

A technology of taint propagation and path analysis, applied in the field of taint propagation path analysis, can solve the problems of less research, time-consuming, and performance-consuming, and achieve the effect of simple data flow analysis, eliminating redundant dependencies, and eliminating control dependencies

Inactive Publication Date: 2014-04-16
BEIJING INSTITUTE OF TECHNOLOGYGY
View PDF6 Cites 15 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] However, the existing taint analysis technology has relatively little research on the taint propagation path, and more attention is paid to the discovery of taints.
Existing research on dynamic taint analysis requires the use of instrumentation technology, which requires a certain amount of performance and requires specific inputs to drive the program to run. It takes a certain amount of time to construct specific inputs.

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
  • Method for analyzing taint propagation path
  • Method for analyzing taint propagation path
  • Method for analyzing taint propagation path

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0020] The present invention will be further described below in conjunction with the drawings and specific embodiments.

[0021] At first term among the present invention is set forth:

[0022] Static single assignment: Static Single-Assignment, which is an intermediate representation. It is called single assignment because each name is only assigned once in SSA.

[0023] Postdomination: We say that the basic block Y postdominates the basic block X, if every path P from X to the program Exit contains Y, it is recorded as Y PDom X. That is, Y is a necessary node of X.

[0024] Post dominance frontier (Post dominance frontier): DF(Y)={X|Z is the successor node of X so that Y post-dominates Z and Y does not post-dominate node X, that is, Z∈succeed(X) makes Y PDom Z and Y┐ (PDom)X}.

[0025] Branch control variable: Assume that the basic block B contains the definition of variable v or the use statement, and the bounding set of B’s necessary nodes is DF(B). For any Bi∈DF(B), i...

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 provides a method for analyzing the taint propagation path to achieve the technical purpose of analyzing the taint propagation path based on the program dependence. The method comprises the steps that firstly, a program is analyzed through the LLVM compiler architecture, a source code is converted into an IR expression, and the IR expression of the LLVM is based on the static single assignment form; secondly, the variable data dependence analysis in a basic block is carried out on the IR expression obtained in the first step; thirdly, the control dependence analysis among basic blocks is carried out on the IR expression obtained in the first step; fourthly, the dependence of a PHI node at the aggregation position of the basic blocks is processed, the PHI function is placed at the aggregation position of the basic blocks in the static single assignment form expression and used for selecting different living examples of the variables in different branches, the dependence relation of the left variable of the PHI function is worked out according to the analysis result of the second step and the analysis result of the third step, the dependence of the basic blocks to the basic block aggregation position is linked, and therefore the taint propagation path can be analyzed.

Description

technical field [0001] The invention relates to a stain propagation path analysis method, which belongs to the technical field of software detection. Background technique [0002] Taint propagation analysis originated from Perl's Tainting mechanism. It is currently used in software defect detection, automatic generation of type-based vulnerability signatures, software testing, etc. Untrustworthy data input from outside is usually marked as taint. Taint propagation analysis is the process of tracking and preventing incorrect use of taint. Discovering the taint propagation path is of great significance to discovering potential vulnerabilities. [0003] Taint analysis marks the data flowing into the program from outside as a taint, and then tracks the propagation process of the tainted data in the program. The general idea: 1) mark the source of tainted data; 2) record the spread of tainted data; 3) alert the use of tainted data, when it is detected that tainted data flows in...

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
Patent Type & Authority Applications(China)
IPC IPC(8): G06F11/36
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