Composite Vulnerability Detection via Clustering and Pattern Matching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing vulnerability assessment methods fail to detect composite vulnerabilities, which are groups of individual vulnerabilities that, while not severe on their own, can collectively pose a significant security threat and may be intentionally introduced by insiders, often going unnoticed as they are not flagged by static or dynamic analyzers.
Innovation Solution
A method that classifies detected vulnerabilities into patterns to identify composite vulnerabilities by matching reference vulnerabilities across different classes, using techniques such as Common Weakness Enumeration (CWE) and machine learning to generate new detection rules, allowing for the identification of intentional vulnerabilities that could be exploited for unauthorized access or data manipulation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If static or dynamic analyzers are used to detect vulnerabilities, then individual vulnerabilities can be identified, but composite vulnerabilities formed by multiple individual vulnerabilities cannot be detected
Solution Approach 1:
The patent segments the vulnerability detection process into multiple stages: first detecting individual vulnerabilities separately, then analyzing their combinations to identify composite vulnerabilities. This segmentation allows the system to handle complex detection tasks by breaking them down into manageable individual vulnerability detections followed by combination analysis.
Solution Approach 2:
The patent merges multiple individual vulnerability detections to identify composite vulnerabilities. By combining results from static and dynamic analyzers and analyzing interactions between different vulnerabilities, the system detects composite vulnerabilities that individual analysis methods would miss.
2Reliability
If all identified vulnerabilities are remedied, then security is improved, but cost and time consumption increase significantly
Solution Approach 1:
The patent applies local quality by differentiating between individual vulnerabilities and composite vulnerabilities, assigning different remediation priorities based on their actual security impact. Composite vulnerabilities formed by specific combinations are identified as high-priority targets, while individual vulnerabilities that don't form dangerous combinations can be addressed later or with lower priority.
Solution Approach 2:
The system provides feedback by analyzing the combinations and interactions of vulnerabilities to determine their actual security risk. This feedback mechanism allows prioritization of remediation efforts based on which vulnerability combinations create the most dangerous composite vulnerabilities, rather than treating all vulnerabilities equally.
3Ease of operation
If individual vulnerabilities are analyzed in isolation, then detection is simplified, but composite vulnerabilities formed by multiple vulnerabilities remain undetected
Solution Approach 1:
The detection process is segmented into two phases: first, individual vulnerabilities are detected using simple static and dynamic analysis methods; second, the results are combined and analyzed to identify composite vulnerabilities. This segmentation maintains simplicity in the detection phase while achieving comprehensive detection in the analysis phase.
Solution Approach 2:
The patent adds another dimension to vulnerability analysis by examining not just individual vulnerabilities but their combinations and interactions. This dimensional shift from single-vulnerability analysis to multi-vulnerability combination analysis enables detection of composite vulnerabilities that would be invisible in isolation.
Data Source
AI summary
In a system for detecting composite vulnerabilities associated with a process or a context, individual defects/vulnerabilities in a software system/application are identified and clustered into two or more classes of defects, where each class includes one or more defects of related types. Given a pattern of defects of different types, where the pattern represents a composite vulnerability, it is determined by searching in the clusters, if the software system/application includes all of the defects/vulnerabilities associated with that pattern.


