Code virtualization software protection system realizing instruction set randomization

A virtualization software and protection system technology, applied in the field of computer software security, can solve problems such as code confusion, poor protection effect, easy to be found and removed, etc., to increase complexity, prolong analysis time, and enhance anti-reverse analysis capabilities Effect

CN105046117AInactive Publication Date: 2015-11-11NORTHWEST UNIV(CN)
3 Cites 30 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Publication Date
2015-11-11
Estimated Expiration
Not applicable · inactive patent

Smart Images

  • Figure 1
    Figure 1
  • Figure 2
    Figure 2
  • Figure 3
    Figure 3
Patent Text Reader

Abstract

The invention discloses a code virtualization software protection system realizing instruction set randomization, and belongs to the field of computer software security. According to the code virtualization software protection system, a virtual instruction set is built in the system; key code in a program to be protected is disassembled to obtain a local instruction sequence; then, the local instruction sequence is converted into a first virtual instruction according to the virtual instruction set of architecture; the first virtual instruction is coded to obtain a byte code instruction; the byte code instruction is combined with a generated attached virtual machine assembly to obtain an attached file; the attached file is combined with the program to be protected to obtain a first file; and junk data filling is performed on the first file to obtain the final protected program. The code virtualization software protection system has the advantages that the complexity of the program to be protected can be improved; and the analysis time of an analyzer on the program to be protected is prolonged, so that the protection capability of the program to be protected is enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

technical field

[0001] The invention belongs to the field of computer software security, in particular to a code virtualization software protection system with randomized instruction set. Background technique

[0002] While the wide application of software has brought huge benefits to the society, the issue of software security has become increasingly prominent, and software anti-malicious reverse engineering has become an urgent problem to be solved. The development of current software attack technology and reverse tools facilitates the reverse analysis of software by attackers. In addition, software generally runs in a "white box attack" environment, where attackers can completely control the execution process of the software and view the sequence of instruction execution. Therefore, given the attacker enough time, it should be possible to successfully reverse engineer the software.

[0003] The amount of information a person can process within a certain period of time i...

Examples

Embodiment 1

[0041] The present invention provides a code virtualization software protection system with instruction set randomization, said code virtualization software protection system with instruction set randomization, such as figure 1 shown, including:

[0042] 01. Build a virtual instruction set.

[0043] 02. Perform PE file detection on the program to be protected.

[0044] 03. Locate the key code segment in the program to be protected.

[0045] 04. Disassembling the key code segment to obtain a local instruction sequence.

[0046] 05. Convert the native instruction sequence into a first virtual instruction according to the designed virtual instruction set.

[0047] 06. Encode the first virtual instruction according to a preset encoding rule to obtain a bytecode instruction.

[0048] 07. Generate the auxiliary virtual machine components of the protection system.

[0049] 08. Combine the bytecode instruction and the attached virtual machine component into an additional file, fo...