VM Audit Engine Temporary Agent Insertion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity and heterogeneity of software assets in modern computing environments, particularly in hardware virtualization configurations, pose challenges for effective software auditing, leading to difficulties in software licensing, security, and the risk of malicious software infiltration.

Innovation Solution

A computer system with a VM audit engine outside guest virtual machines that inserts and removes an audit agent to transmit a list of installed programs to a remote audit server, enabling remote software auditing without requiring permanent installation of auditing software within the virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If an audit agent is permanently installed within virtual machines to collect software inventory data, then audit data collection is reliable and complete, but the risk of malware infiltration and security vulnerabilities increases

Engineering Contradiction:
Improveaudit data collection reliabilityVSAvoidmalware exposure risk
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary action by inserting the audit agent temporarily before the audit operation and removing it afterward. The agent is inserted into the virtual machine's memory space, executed to collect software inventory data, and then removed, ensuring no permanent footprint remains. This resolves the contradiction by achieving reliable data collection through temporary presence while eliminating malware exposure risk through immediate removal.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses an intermediary approach by introducing a hypervisor layer between the audit system and the virtual machines. The audit agent is inserted through the hypervisor into the VM's memory space without permanent installation. This intermediary mechanism enables reliable audit data collection while preventing security vulnerabilities, as the agent operates temporarily under hypervisor control and is subsequently removed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If auditing software is installed within each virtual machine to perform local audits, then audit precision is high, but device complexity and administrative overhead increase

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

Solution Approach 1:

The patent extracts the audit agent from being a permanent installed component and transforms it into a temporary in-memory execution entity. Instead of installing auditing software within each virtual machine, the system inserts a lightweight agent into the VM's memory space, executes it to collect precise audit data, and then removes it. This extraction approach maintains high audit precision while dramatically reducing device complexity and administrative overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying by creating a temporary copy of the audit agent in the virtual machine's memory space rather than installing permanent software. The agent is copied into memory, executed for data collection, and then discarded. This copying mechanism achieves precise local auditing without the complexity of permanent software installation and management across multiple virtual machines.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If multiple versions of software applications are used across different hardware platforms and operating systems, then system adaptability is improved, but software licensing and security management become more difficult

Engineering Contradiction:
Improveplatform compatibilityVSAvoidsoftware management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies universality by designing an audit system that operates across multiple virtual machines with different operating systems and hardware configurations through a common hypervisor interface. The audit agent is inserted uniformly into each VM's memory space regardless of the underlying platform, enabling consistent audit operations across diverse environments. This universal approach maintains platform adaptability while simplifying software management complexity.

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

Data Source

PatentUS10949247B2Systems and methods for auditing a virtual machine
Publication Date: 2021.03.16 BITDEFENDER IPR MANAGEMENT
  • US10949247B2 patent drawing
  • US10949247B2 patent drawing
  • US10949247B2 patent drawing

AI summary

Described systems and methods enable performing software audits remotely and automatically, on a relatively large number of client systems (e.g., a corporate network, a virtual desktop infrastructure system, etc.) An audit engine executes on each client system, in a hardware virtualization configuration wherein the audit engine executes outside an audited virtual machine. When receiving an audit request from an audit server, some embodiments of the audit engine drop an audit agent into the audited virtual machine, and remove the audit agent upon completion of the audit.