Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

A Complex Type Refactoring Method Based on Variable Association Tree

A variable and type technology, applied in the field of complex type reconstruction based on variable association tree, can solve problems such as uncompilable, complex variable types cannot be restored, constraint equations have no solution or multiple solutions, etc.

Active Publication Date: 2020-09-15
BEIJING INSTITUTE OF TECHNOLOGYGY +1
View PDF5 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, this method cannot avoid the common problem of constraint solving methods, that is, the constraint equation may have no solution or multiple solutions, and this method cannot recover complex variable types.
[0006] In 2007, Ilfak Guilfanov released a decompilation plug-in Hex-Rays for the disassembler IDA Pro, which is a powerful commercial software that can quickly convert 32-bit windows executable programs into source code functions and semantics Valuable C-like code, but can only be used for analysis and not compiled
Although this method can recognize pointers, it generalizes structures, arrays, and pointers without distinction

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
  • A Complex Type Refactoring Method Based on Variable Association Tree
  • A Complex Type Refactoring Method Based on Variable Association Tree
  • A Complex Type Refactoring Method Based on Variable Association Tree

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

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

[0067] The invention provides a method for refactoring complex types based on variable association tree. Variables of some basic types, such as character type, integer type, long integer type, etc., can be stored in registers, and these variables can be operated by operating registers. However, the length of complex types of variables, such as arrays and structures, usually exceeds the range that registers can represent, and the data in memory can only be loaded into registers before they can be manipulated by the CPU. In fact, a data object is generally allocated as a continuous memory space, and the data object can be accessed through a pointer pointing to the first address of the memory space, and the pointer can be stored in a register, and the operation of complex type variables is used pointer. Therefore, the reconstruction of complex types needs t...

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 complex type reconstruction method based on a variable association tree. The method specifically comprises the following steps: a binary program to be processed is convertedinto an assembler program, and the variable association tree VRT is created for each functional unit in the assembler program; the binary program is converted into an assembler program. Creating a variable address mapping table VAM according to the variable association tree VRT; The final VRT is obtained by updating the attribute information of the node in the variable association tree VRT according to the assembler, and the variable address mapping table VAM is updated at the same time. The variable address mapping table VAM corresponding to the final VRT contains the basic type reconstruction result of the assembler. The operator attribute that identifies the filtered root node is the dereferenced final VRT as the pointer VRT, The complex type of B + C pointer VRT is a structure, and thecomplex type of B + V + C pointer VRT is an array. For B + C pointer VRT and B + V + C pointer VRT, different methods are used to reconstruct the structure and array respectively. This method can realize the rapid and effective complex type reconstruction, and the reconstruction results are more accurate.

Description

technical field [0001] The invention relates to the technical field of software maintenance and safety, in particular to a complex type reconstruction method based on a variable association tree. Background technique [0002] Decompilation is the reverse process of compilation, and its goal is to convert binary code into a high-level language form that is logically and functionally equivalent to it. The structure type of the variable in the source program determines the storage space and usage rules of the variable. However, after the source code is compiled and optimized, the type and debugging information of the program no longer exist, and are replaced by anonymous byte block information. The memory allocation and access forms and their mutual dependencies reflect the type information of variables. With the extensive use of third-party software, for security reasons, more and more software needs to be analyzed to detect whether the software contains vulnerabilities and m...

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 Patents(China)
IPC IPC(8): G06F8/72
CPCG06F8/72
Inventor 胡昌振马锐菅泽峰朱天保刘健雄
Owner BEIJING INSTITUTE OF TECHNOLOGYGY
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products