Secure Script Engine for Hostile Attack Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer programs are vulnerable to hostile attacks when executed in a computing environment controlled by an attacker, as digital signature checks can be skipped and object code modified, allowing unauthorized access and modifications.

Innovation Solution

A script is generated from the IF antecedent and its TRUE and FALSE consequences, which is executed by a script engine in a secure environment, allowing detection of modifications and ensuring compliance with intended execution paths, even if the original code is compromised.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the program is executed in a computing environment controlled by the attacker, then the attacker can easily modify object code and skip digital signature checks, but the program's security and integrity are compromised

Engineering Contradiction:
Improveease of code modificationVSAvoidprogram security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces a secure computing environment as an intermediary between the attacker-controlled environment and the program execution. This secure environment hosts a script engine that executes generated scripts with protected integrity, preventing the attacker from modifying critical security checks while still allowing the program to function. The secure environment acts as a mediator that isolates the program from hostile attacks.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the execution environment into two distinct parts: a secure computing environment for executing critical security-related scripts, and an untrusted environment for the rest of the program. By separating security-critical operations into their own isolated environment with enforced integrity, the system prevents attackers from compromising the entire program through code modification while maintaining ease of operation in the untrusted environment.

Inventive Principle:
Principle #1Segmentation

2Reliability

If digital signature checks are implemented in the original code, then program integrity can be verified, but the checks can be skipped or modified by attackers in a controlled environment

Engineering Contradiction:
Improvedigital signature verificationVSAvoidhostile attack vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent moves digital signature checks and other security verification operations into a secure computing environment that acts as an intermediary. This secure environment executes the verification logic in a protected manner that prevents attackers from skipping or modifying the checks, while still allowing the verification functionality to operate as intended. The intermediary secure environment shields the critical verification operations from hostile attacks.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent generates scripts from the original source code that contain the security check logic. These generated scripts are then executed in the secure computing environment rather than running the original code directly. By copying the security verification logic into a separate, protected execution context, the system maintains the integrity of digital signature checks while preventing attackers from compromising them in the original code.

Inventive Principle:
Principle #26Copying

3Ease of manufacture

If the original source code is used for security checks, then the logic is simple and clear, but it can be surreptitiously modified by attackers without detection

Engineering Contradiction:
Improvecode simplicityVSAvoidcode modification detection
Core Design Contradiction:
Ease of manufactureVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements a feedback mechanism where the secure computing environment continuously monitors and verifies the integrity of executed scripts. When scripts are generated from source code and executed in the secure environment, any unauthorized modifications are detected through integrity checks, and the system can respond by alerting administrators or terminating execution. This feedback loop maintains code simplicity while enabling detection of surreptitious modifications.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The secure computing environment serves as an intermediary that sits between the original source code and the execution process. It receives the simple, clear security check logic from the source code, executes it in a protected manner, and monitors for any modifications. This intermediary layer preserves the simplicity of the original code while adding the capability to detect surreptitious changes without complicating the core security logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9378360B2Secure if antecedent
Publication Date: 2016.06.28 FLEXERA SOFTWARE LLC
  • US9378360B2 patent drawing
  • US9378360B2 patent drawing
  • US9378360B2 patent drawing

AI summary

Hostile attacks against a computer program are prevented when the program is executed in a computing environment that is controlled by the attacker. A preposition is run in a secure computing environment instead of the original call site, i.e. the IF antecedent, which has a TRUE consequence and a FALSE consequence are run in a secure computing environment. Embodiments of the invention also allow an insecure call site to detect modifications by a hostile attacker surreptitiously. In embodiments of the invention, a script is generated by a script generator from the IF antecedent and TRUE and FALSE consequence source code, for example relative to a call site. The original source code is modified to call the script engine, rather than the preposition. At run-time a script engine executes this script.