Probe Points for Mitigating Software Vulnerability Exploitation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The rapid exploitation of software vulnerabilities by hackers creates a significant window of malicious activity between vulnerability announcement and patch installation, posing challenges for system administrators who must balance security with the risk of system instability during patch updates.

Innovation Solution

Implementing probe points as software interrupts within kernel and user spaces that identify security vulnerabilities without altering the code, allowing for dynamic insertion and customizable corrective actions to secure the system until a patch can be applied.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a software patch is released to address a vulnerability, then the security vulnerability is fixed, but the system stability may be compromised due to potential failures during patch installation

Engineering Contradiction:
Improvesecurity vulnerability fixationVSAvoidsystem stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The patent applies preliminary action by implementing probe points before the actual vulnerability exploitation occurs. Probe points are inserted into the code path at locations where vulnerabilities may be exploited, allowing the system to detect and respond to vulnerability attempts before they can cause harm. This enables security monitoring and response without requiring immediate patch installation, thus maintaining system stability while addressing security concerns.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If the window of malicious exploitation is reduced by applying patches quickly, then security is improved, but the risk of system failure during patch installation increases

Engineering Contradiction:
Improvewindow of malicious exploitationVSAvoidsystem stability during patch installation
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent introduces probe points as intermediary elements between the vulnerability and the patch. These probe points act as mediators that detect vulnerability exploitation attempts and trigger corrective actions without requiring immediate patch installation. This intermediary mechanism allows the system to reduce the exploitation window while avoiding the risks associated with rapid patch deployment, such as system instability and failure.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Difficulty of detecting and measuring

If probe points are dynamically inserted into code paths, then vulnerability detection capability is improved, but the device complexity increases

Engineering Contradiction:
Improvevulnerability detection capabilityVSAvoidcode path modification complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The patent applies copying by creating probe points that replicate the behavior of the original code paths without modifying them. The probe points are inserted as separate entities that monitor and detect vulnerability exploitation attempts, while the original code remains unchanged. This copying approach enables enhanced vulnerability detection capability while avoiding the complexity of modifying the actual code base, as the probe points operate as independent monitoring components.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7845006B2Mitigating malicious exploitation of a vulnerability in a software application by selectively trapping execution along a code path
Publication Date: 2010.11.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7845006B2 patent drawing
  • US7845006B2 patent drawing
  • US7845006B2 patent drawing

AI summary

A method of reducing the window of malicious exploitation between vulnerability publication and the installation of a software patch. One or more probe points are inserted into a code path in an application (or operating system if applicable) that contains one or more vulnerabilities (or coding errors). The probe points mark locations of the security vulnerabilities utilizing software interrupts to enable the original code base of the code path to remain unmodified. A probe handler utility subsequently monitors the execution of the code path and generates an alert if the execution reaches a probe point in the code path, thus indicating whether the application exhibits a particular vulnerability. The probe handler selectively performs one of multiple customizable corrective actions, thereby securing the application until an applicable software patch can be installed.