Convolutional Neural Network Binary Code Malware Classification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional malware detection systems face challenges in detecting new ('zero-day') or polymorphic malware due to their reliance on static signatures and labor-intensive expert analysis, making it difficult to defend against cyber-attacks effectively.

Innovation Solution

A cyber-security system utilizing a convolutional neural network (CNN) for feed-forward processing of binary code from executable files, combined with an intelligence-driven analysis subsystem, to classify files as malicious or benign without the need for intermediate analysis or translation, allowing for concurrent operation and enhanced detection capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional malware detection systems use static signatures and expert analysis, then detection accuracy for known malware is improved, but the ability to detect new (zero-day) or polymorphic malware deteriorates

Engineering Contradiction:
Improvedetection accuracyVSAvoiddetection capability for new malware
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic malware detection by training neural networks on binary code features to automatically adapt to new malware types. The system continuously learns from training data and updates its detection models, transitioning from static signature-based detection to dynamic behavior-based detection that can identify zero-day and polymorphic malware through pattern recognition in binary code characteristics.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the detection parameters from fixed signatures to learned features extracted from binary code. By using neural networks to automatically identify and weight various binary code features (headers, sections, imports, etc.), the system transforms the detection approach from relying on predetermined signatures to using dynamically determined parameters that adapt to different malware types.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If expert analysis is used to formulate detection signatures, then detection precision for known malware is improved, but system complexity and labor requirements increase

Engineering Contradiction:
Improvedetection precisionVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements self-service detection by enabling the neural network system to automatically learn and identify malware features without requiring continuous expert intervention. The system autonomously trains on binary code data, automatically formulates detection rules, and updates its models, replacing the need for manual expert analysis while maintaining high detection precision.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent substitutes the mechanical process of manual expert analysis with an automated neural network system. Instead of relying on human experts to manually examine and classify malware, the system uses machine learning algorithms to automatically process binary code, identify patterns, and make detection decisions, thereby reducing system complexity and labor requirements.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Extent of automation

If neural networks are used for malware detection, then automation and detection speed are improved, but training complexity and computational requirements increase

Engineering Contradiction:
Improvedetection automationVSAvoidtraining complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent segments the malware detection process into distinct phases: binary code extraction, feature identification, neural network training, and detection execution. By dividing the complex training process into manageable segments with specific focus areas (different binary code features like headers, sections, imports), the system reduces overall training complexity while maintaining high automation levels.

Inventive Principle:
Principle #1Segmentation

4Measurement precision

If comprehensive binary code analysis is performed, then detection accuracy is improved, but processing time and network performance degradation increase

Engineering Contradiction:
Improvedetection accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by having the neural network focus on the most discriminative binary code features rather than analyzing every aspect of the binary code equally. The system identifies and prioritizes key features (such as specific header fields, section characteristics, or import patterns) that are most indicative of malware, performing comprehensive analysis only where necessary to maintain detection accuracy while reducing overall processing time.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12069087B2System and method for analyzing binary code for malware classification using artificial neural network techniques
Publication Date: 2024.08.20 GOOGLE LLC
  • US12069087B2 patent drawing
  • US12069087B2 patent drawing
  • US12069087B2 patent drawing

AI summary

A system for detecting whether a file including content s associated with a cyber-attack is described. The content may include an executable file for example. The system includes an intelligence-driven analysis subsystem and a computation analysis subsystem. The intelligence-driven analysis subsystem is configured to (i) receive the file, (ii) inspect and compute features of the file for indicators associated with a cyber-attack, and (iii) produce a first output representing the detected indicators. The computational analysis subsystem includes an artificial neural network to (i) receive a network input being a first representation of at least one section of binary code from the file as input, and (ii) process the first representation of the section to produce a second output. The first output and the second output are used in determination a classification assigned to the file.