VM Network Attack Detection via Hardware Counter Machine Learning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for determining network attacks rely on software-related activities and predefined static thresholds, which can lead to high false positive rates due to inaccurate threshold definitions.

Innovation Solution

The method involves using data from hardware counters of a processor to determine if a virtual machine is executing a network attack by associating hardware-related activity counts with virtual machines and employing machine learning algorithms to classify and identify malicious activity, allowing for real-time detection and potential termination of malicious processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If static threshold based methods are used to determine network attacks, then the detection method is simple and easy to implement, but the false positive rate is high due to inaccurate threshold definition

Engineering Contradiction:
Improveease of implementationVSAvoidfalse positive rate
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent replaces the mechanical/static threshold-based detection system with a machine learning-based system that uses hardware counter data. Instead of relying on predefined static thresholds that require manual tuning and produce high false positives, the system employs machine learning algorithms (such as random forest, support vector machines, or neural networks) that automatically learn optimal detection parameters from training data, thereby improving reliability while maintaining ease of implementation through automated model training and deployment.

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

Solution Approach 2:

The patent changes the detection parameters from static software-related thresholds to dynamic hardware-related metrics captured by hardware counters. By collecting and analyzing hardware performance data (such as CPU utilization, memory access patterns, I/O operations) through hardware counters and applying machine learning algorithms, the system adapts detection parameters dynamically based on actual system behavior, significantly reducing false positives while maintaining simplicity through automated parameter optimization.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If hardware counters are used to monitor processor activities, then the detection accuracy is improved, but the device complexity increases

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

Solution Approach 1:

The patent leverages the existing hardware counters that are already present in modern processors for performance monitoring and debugging purposes. These hardware counters serve multiple functions: they provide detailed processor activity data for attack detection, maintain system performance statistics, and support debugging operations. By reusing this existing infrastructure for security detection purposes, the patent improves detection accuracy without significantly increasing device complexity, as the hardware counters are already integrated into the processor architecture.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a software layer (driver or monitoring module) that acts as an intermediary between the hardware counters and the machine learning detection system. This intermediary component collects data from hardware counters, processes and formats it appropriately, and feeds it to the machine learning algorithms. This abstraction layer simplifies the overall system architecture by decoupling the hardware measurement layer from the analysis layer, making the system more manageable and easier to implement despite the increased complexity from adding hardware monitoring capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If machine learning algorithms are employed for attack detection, then the false positive rate is reduced, but the processing time and computational resources increase

Engineering Contradiction:
Improvefalse positive rateVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent employs machine learning algorithms during an offline training phase where the system learns optimal detection patterns from labeled training data representing both normal and malicious activities. This preliminary training action creates pre-trained models that can then be deployed for real-time detection. By performing the computationally intensive learning process beforehand, the system achieves high detection accuracy with reduced false positives while maintaining fast processing times during actual network operation, as the trained models require minimal computational resources for inference.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a dynamic detection system where machine learning models continuously adapt to changing network conditions and attack patterns. The system can retrain models periodically with new data, adjust detection thresholds dynamically, and update detection strategies based on emerging threats. This dynamic approach maintains high detection accuracy and low false positive rates over time while managing computational resources efficiently through adaptive model updating rather than continuous full-model retraining.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230275906A1System and method of determining existence of a network attack
Publication Date: 2023.08.31 MELLANOX TECHNOLOGIES LTD(IL)
  • US20230275906A1 patent drawing
  • US20230275906A1 patent drawing
  • US20230275906A1 patent drawing

AI summary

A method of determining if a virtual machine is executing a network attack may include using a computing device operating a processor: receiving a plurality of jobs from a plurality of virtual machines being executed across time slices on a host computer in a computer network; executing the plurality of jobs using the processor; receiving data from hardware counters of the processor; and based on the data, determining whether or not a virtual machine of the plurality of virtual machines is executing a network attack.