Runtime Analysis Framework for Software Security Vulnerability Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software analysis programs fail to effectively detect security vulnerabilities by only providing snapshot views of source code and not testing behaviors or states that occur during runtime, and they may not have access to all application source code, limiting their ability to identify internal code paths for security flaws.
Innovation Solution
A runtime analysis framework (RTA) is implemented that embeds rules within software applications to detect security vulnerabilities by assigning input tags to user requests and sanitization tags to security checks, allowing for the identification of potentially malicious requests and verifying that security checks are performed during runtime without accessing the entire source code.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If current software analysis programs test every path through source code, then coverage of code paths is improved, but the ability to detect runtime behaviors and states is worsened
Solution Approach 1:
The patent applies preliminary action by embedding instrumentation code and tagging mechanisms into the software application before runtime execution. This allows the system to pre-establish tracking of data objects and their provenance, enabling runtime detection of security vulnerabilities without requiring exhaustive static analysis of all code paths. The instrumentation is installed in advance to capture runtime behaviors that static analysis cannot detect.
2Measurement precision
If analysis programs access all application source code, then complete security scanning is improved, but the practicality and ease of operation is worsened
Solution Approach 1:
The patent extracts the essential security analysis functionality from requiring access to all source code by using runtime instrumentation and data tagging. Instead of needing complete source code access, the system extracts and tracks critical data objects through runtime tags that identify user-controllable inputs and their flow through the application. This extraction approach maintains detection capability while eliminating the operational burden of requiring full source code access.
3Measurement precision
If runtime analysis framework tags all data objects, then vulnerability detection accuracy is improved, but the device complexity and overhead is worsened
Solution Approach 1:
The patent applies local quality by implementing selective tagging of data objects based on their security relevance rather than uniformly tagging all objects. The system identifies and tags specifically user-controllable input data and critical data objects that are susceptible to security vulnerabilities, while leaving other non-critical objects untagged. This localized approach maintains high detection accuracy for security-relevant paths while reducing overall system complexity and overhead.
Data Source
AI summary
During runtime of the software application, the runtime analysis framework may assign input tags to objects associated with the user requests. The input tags may identify the requests as potentially malicious and carry a security risk. The RTA framework then may assign sanitization tags to the objects identifying security checks performed on the objects during runtime. The RTA framework identifies output responses to the user requests that include the objects and compares the input tags assigned to the objects with any sanitization tags assigned to the objects. The RTA framework may identify the software application as susceptible to a security vulnerability when the input tags for the objects do not include corresponding sanitization tags.


