Solution-centric Security Warning Reporting for Static Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing static analysis tools generate numerous false findings, overwhelming users with non-actionable security warnings, making it difficult to identify and remediate actual vulnerabilities in web and mobile applications.
Innovation Solution
Transitioning the analysis report from a problem space to a solution space by processing code pathway traces to identify optimal fix points, grouping findings based on common and user-accessible nodes, and providing actionable solution groups for each vulnerability type.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If static analysis tools perform comprehensive scanning to identify all potential security vulnerabilities, then the coverage and detection capability are improved, but the number of false findings increases significantly
Solution Approach 1:
The patent segments the large set of findings into smaller, manageable groups based on commonalities in code pathways, taint sources, sinks, and intermediate operations. This grouping reduces the overwhelming number of individual findings into consolidated security issues that share common root causes or patterns, making them easier to analyze and remediate.
Solution Approach 2:
The patent merges multiple related findings into single consolidated security issues. By combining findings that share common taint sources, sinks, or code pathways, the system reduces redundancy and presents a more manageable set of unique security problems rather than numerous duplicate or overlapping warnings.
2Loss of information
If static analysis tools report detailed raw findings to ensure completeness, then the information completeness is improved, but the usability and actionability of reports deteriorates
Solution Approach 1:
The patent segments detailed raw findings into structured groups with clear identifiers, common characteristics, and consolidated descriptions. Each security issue group maintains essential information about the vulnerability while organizing it in a way that is easier to understand and act upon, balancing completeness with usability.
Solution Approach 2:
The patent creates a universal grouping framework that can handle multiple types of security findings through a common structure. This framework provides a standardized way to present diverse security issues, making the report systematically usable across different vulnerability types while preserving necessary details.
3Reliability
If static analysis tools analyze all code pathways to ensure thoroughness, then the analysis completeness is improved, but the analysis time and computational resources increase
Solution Approach 1:
The patent performs preliminary grouping and consolidation of findings before detailed analysis. By organizing code pathways, taint sources, and sinks into groups based on common characteristics in advance, the system reduces the computational complexity of subsequent analysis while maintaining thoroughness through structured organization of all code pathways.
Data Source
AI summary
A new paradigm for security analysis is provided by transitioning code analysis reporting from the problem space (the warnings themselves), to a solution space (potential solutions to the identified problems). Thus, instead of reporting raw findings to the user, the automated system as described here outputs proposed solutions to eliminate the defects identified in the security analysis. A consequence of this approach is that the report generated by the analysis tool is much more consumable, and thus much more actionable. Preferably, the report provides the user with one or more candidate location(s) at which to apply a fix to an identified security problem. These locations preferably are identified by processing overlapping nodes to identify one or more solution groupings that represent an API for a sanitization fix. The report also includes one or more recommendations for the fix, and preferably the report is generated on a per-vulnerability type basis.


