Paravirtualized Security System for Networked Device Driver Calls

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cybersecurity measures for networked devices, particularly those using protocols like Bluetooth and NFC, lack adequate security, and existing solutions like secure enclaves only partially address software attacks, while OS/driver level attacks have become easier due to the widespread presence of central processing units in modern devices, necessitating a more comprehensive approach to protect against hardware-level communications and I/O attacks.

Innovation Solution

A paravirtualized security system that intercepts and analyzes driver calls as hyper calls, applying security rules to determine threats, and performs security processes such as encryption and generating notices, using a hypervisor-based architecture to decouple drivers from the host OS and create a virtual environment for the policy module to enforce security policies, including authentication and encryption, thereby preventing unauthorized access and data tampering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If secure enclaves are implemented to protect against software attacks, then security against malicious software is improved, but protection against OS/driver level attacks and hardware-level communications remains insufficient

Engineering Contradiction:
Improvesecurity against malicious softwareVSAvoidvulnerability to OS/driver level attacks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system segments the security architecture into multiple isolated components: secure enclaves for application-level protection, a virtualization layer for driver isolation, and a security module for policy enforcement. This segmentation prevents attacks from propagating across system boundaries by creating distinct security zones with controlled access paths between them.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A security module acts as an intermediary between the OS/driver layer and the hardware interface. This intermediary intercepts driver calls, translates them to hypercalls, and enforces security policies before allowing access to hardware resources. The intermediary blocks malicious OS/driver attacks while maintaining legitimate functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If all CPU inputs/outputs are disabled to prevent hardware-level attacks, then security against hardware attacks is improved, but functionality of the system is significantly reduced

Engineering Contradiction:
Improvesecurity against hardware attacksVSAvoidsystem functionality
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The security system dynamically controls access to CPU inputs/outputs based on policy rules and threat assessment. Rather than statically disabling all I/O, the system selectively permits or blocks specific driver calls based on security policies enforced by the security module. This dynamic approach maintains necessary functionality while preventing attacks.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameters of I/O access by translating driver calls into hypercalls with modified parameters. The security module can alter call parameters, add security context, and enforce access control policies. This transformation allows legitimate I/O operations while blocking malicious ones without completely disabling CPU inputs/outputs.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If a paravirtualized security layer is introduced to intercept and analyze driver calls, then security threat detection is improved, but system complexity and processing overhead increase

Engineering Contradiction:
Improvesecurity threat detection capabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The security module performs multiple functions within a single architectural layer: it intercepts driver calls, translates them tohypercalls, analyzes security threats, enforces policies, and manages encryption. This multi-functional design reduces overall system complexity compared to having separate specialized components for each security function.

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

Solution Approach 2:

The paravirtualized security layer is integrated into the existing virtualization infrastructure, utilizing the hypervisor's inherent capabilities for call interception and translation. The security module leverages the virtualization framework's existing mechanisms rather than implementing a completely separate interception system, reducing complexity through self-service integration.

Inventive Principle:
Principle #25Self-service

4Reliability

If driver calls are translated intohypercalls and analyzed according to security rules, then security policy enforcement is improved, but processing time and system performance are reduced

Engineering Contradiction:
Improvesecurity policy enforcementVSAvoidsystem processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Security policies are pre-configured and compiled into the security module before runtime. The translation from driver calls tohypercalls uses pre-established mapping rules, and security policies are loaded in advance. This preliminary preparation reduces runtime processing overhead by avoiding dynamic policy interpretation during critical I/O operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3284003B1Paravirtualized security threat protection of a computer-driven system with networked devices
Publication Date: 2021.02.24 GIGAVATION
  • EP3284003B1 patent drawingFigure 1~1A
  • EP3284003B1 patent drawingFigure 1B~1C
  • EP3284003B1 patent drawingFigure 2

AI summary

A computer-implemented method and computer program product for protecting a computer- driven system from a security threat. The computer-driven system includes a processor host running an operating system in a virtualized environment in communication over a network with a plurality of electronic devices. A set of protocols governs communications over the network between the processor and the devices. The method includes receiving a driver call made to a specific driver, the driver call being generated by the operating system in response to a system call made by an application as well as interrupting transmission of the driver call to the specific driver; and performing a series of paravirtualization processes. The paravirtualization processes include: translating the driver call into a hyper call; analyzing the hyper call according to a set of security rules to determine if a security threat exists; if the analyzing does not determine that a security threat exists, then transmitting the hyper call to the specific driver; and if the analyzing determines that a security threat exists, then performing a security process.