Malware Detection via Instruction Count Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing malware detection systems fail to effectively identify obfuscated malicious code, which is scrambled and hidden within executable program modules, making it difficult to detect until it is fully assembled and executed.

Innovation Solution

A system and method that count specific types of program instructions before and during execution, comparing pre-execution and run-time counts to determine if significant differences exceed a threshold, indicating potential obfuscated malware, and terminate or suspend the program if malicious activity is detected.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virus obfuscation techniques are used to scatter and fragment malicious instructions, then the malware can escape detection by signature-based scanners, but the malicious code becomes difficult to detect until it is fully assembled during execution

Engineering Contradiction:
Improvemalware detection reliabilityVSAvoiddifficulty of detecting obfuscated malware
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent performs preliminary analysis of the executable file before execution to establish baseline instruction counts and characteristics. By pre-calculating and storing the expected instruction counts for each opcode type in the executable, the system creates a reference profile that enables later detection of unauthorized code assembly during runtime, thus resolving the detection difficulty without triggering the obfuscated malware

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously monitors instruction counts during execution and compares them against the pre-established baselines. When discrepancies exceed predefined thresholds, the system triggers detection and termination actions. This feedback mechanism enables real-time detection of obfuscated malware assembly while maintaining normal operation within acceptable parameters

Inventive Principle:
Principle #23Feedback

2Reliability

If the system monitors instruction counts continuously during execution, then obfuscated malware can be detected early, but the system complexity and processing overhead increase

Engineering Contradiction:
Improvemalware detection capabilityVSAvoiddetection system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of monitoring all instructions equally, the system focuses on counting specific opcode types that are characteristic of malware assembly operations. By selectively monitoring only the most suspicious instruction categories rather than every single instruction, the system achieves effective malware detection with reduced computational overhead and simpler implementation

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system transforms the complex problem of analyzing instruction sequences and patterns into a simpler parameter-based approach by counting and comparing opcode frequencies. This parameter transformation converts a complex structural analysis problem into a straightforward numerical comparison task, significantly reducing system complexity while maintaining detection effectiveness

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If threshold-based detection is used to identify significant instruction count differences, then false positives can be reduced, but some obfuscated malware with subtle changes may escape detection

Engineering Contradiction:
Improvedetection accuracyVSAvoidmalware detection coverage
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The detection system divides malware detection into multiple segments by establishing separate baseline thresholds for different opcode categories (e.g., jump instructions, data movement, arithmetic operations). This segmentation allows the system to apply different sensitivity levels to different instruction types, improving overall detection coverage while maintaining precision through category-specific thresholds rather than a single blanket threshold

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9430643B2Detecting malicious computer code in an executing program module
Publication Date: 2016.08.30 KYNDRYL INC
  • US9430643B2 patent drawing
  • US9430643B2 patent drawing
  • US9430643B2 patent drawing

AI summary

A computer program includes a plurality of different types of computer program instructions. Prior to execution of the computer program, the computer the computer program instructions of each of the types. At a time during execution of the computer program, the computer counts the computer program instructions of each of the types. The computer, in response to determining that the count for one of the instruction types determined prior to execution of the computer program differs by at least an associated threshold value from the count for the same instruction type determined during execution, makes a record that the computer program has an indicia of maliciousness.