Simulated Debugging Environment for Malware Execution Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current techniques for detecting unwanted code, such as malware, are limited by protectors and packers that make the code resistant to detection, and authors can disable execution to evade detection by virtual machines and debuggers.

Innovation Solution

Simulating a virtual or debugging environment to prevent unwanted code from executing by creating a simulated environment that includes identifiers, hardware, and processes, making it appear as though a virtual or debugging environment is present, thereby preventing the code from executing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If virtual machines or debuggers are used to analyze unwanted code, then information about the code can be collected, but the unwanted code can protect or pack itself to prevent detection

Engineering Contradiction:
Improveinformation about unwanted codeVSAvoiddetection of unwanted code
Core Design Contradiction:
Loss of informationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent introduces a simulator as an intermediary component that creates a simulated virtual or debugging environment. This simulator acts as a mediator between the security system and the unwanted code, presenting a fake environment that triggers the code's protection mechanisms without providing actual analysis capabilities. The simulator includes components like a simulated debugger interface and virtual hardware identifiers that deceive the unwanted code into believing it is being analyzed, thereby preventing execution while maintaining the appearance of a real analysis environment.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If authors of unwanted code use protectors and packers, then the code becomes resistant to detection, but the code can still be executed in normal environments

Engineering Contradiction:
Improveresistance to detectionVSAvoidexecution capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements preliminary anti-action by pre-configuring the system with simulated environment indicators before the unwanted code executes. The simulator预先 establishes the presence of virtual hardware identifiers, simulated debugger interfaces, and fake virtual machine markers. When the unwanted code checks for these environment indicators, it finds the simulated markers and assumes it is running in a virtual or debugging environment, thus preventing execution before the code can harm the system. This preliminary setup counteracts the protection mechanisms without requiring active intervention during code execution.

Inventive Principle:
Principle #9Preliminary anti-action

3Difficulty of detecting and measuring

If authors disable execution of unwanted code to prevent detection by debuggers, then detection is avoided, but the code cannot be analyzed

Engineering Contradiction:
Improvedetection by debuggerVSAvoidcode analysis information
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of information

Solution Approach 1:

The patent creates a copy or simulation of the debugging environment rather than requiring the actual debugging process. The simulator generates fake debugger interface elements, simulated breakpoint markers, and virtual environment identifiers that replicate the appearance of a debugging session. This copied environment is sufficient to trigger the unwanted code's protection logic without needing to actually execute or analyze the code, thus obtaining the same protective effect as real debugging would provide, without the risk of code execution.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8782615B2System, method, and computer program product for simulating at least one of a virtual environment and a debugging environment to prevent unwanted code from executing
Publication Date: 2014.07.15 MCAFEE LLC
  • US8782615B2 patent drawing
  • US8782615B2 patent drawing
  • US8782615B2 patent drawing

AI summary

A system, method, and computer program product are provided for simulating at least one of a virtual environment and a debugging environment to prevent unwanted code from executing. In use, at least one of a virtual environment and a debugging environment is simulated. Additionally, unwanted code is prevented from executing as a result of the simulation.