Dynamic Security Scan Coverage Assessment via Static Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Dynamic security scans lack objective assessment methods, as their effectiveness is typically determined by the number of vulnerabilities identified, which can be influenced by the quality of the web application rather than the scan's quality, leading to inaccurate evaluations.

Innovation Solution

Combining runtime analysis and static code analysis to determine the attack surface coverage of dynamic security scans, allowing for an objective assessment of the scan's quality by measuring the proportion of the attack surface covered during the scan.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If dynamic security scans are performed as black-box tests without access to source code, then the scans can identify security vulnerabilities through actual attacks, but the effectiveness of the scan cannot be objectively assessed

Engineering Contradiction:
Improvescan effectiveness assessmentVSAvoidassessment methodology
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces static code analysis as an intermediary tool that provides source code information to the dynamic security scan system. This intermediary enables the black-box scanner to obtain attack surface information without breaking the black-box testing paradigm, allowing for objective assessment of scan effectiveness while maintaining the original scanning approach.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the security assessment process into two independent components: static code analysis (which determines attack surface) and dynamic security scanning (which identifies vulnerabilities). This segmentation allows each component to be evaluated separately and combined to provide comprehensive objective assessment, resolving the measurement precision issue without complicating the overall system.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If the number of vulnerabilities identified is used to determine scan effectiveness, then the assessment is simple to perform, but the evaluation is inaccurate because it depends on web application quality rather than scan quality

Engineering Contradiction:
Improvescan quality evaluationVSAvoidassessment efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent replaces the mechanical counting method (simply counting vulnerabilities) with a more sophisticated measurement system that uses static code analysis to determine attack surface. This substitution provides accurate scan quality evaluation by comparing actual vulnerabilities found against the known attack surface, rather than relying on raw vulnerability counts that are influenced by application quality.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If static code analysis is performed to identify data entry points and determine attack surface size, then objective assessment becomes possible, but the overall system complexity increases

Engineering Contradiction:
Improveattack surface measurementVSAvoidanalysis system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent performs static code analysis as a preliminary action before the dynamic security scan. By determining the attack surface in advance, the system establishes a baseline for measuring scan effectiveness. This preliminary action separates the measurement function from the scanning function, making the overall system more manageable despite the added complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10699017B2Determining coverage of dynamic security scans using runtime and static code analyses
Publication Date: 2020.06.30 MICRO FOCUS LLC
  • US10699017B2 patent drawing
  • US10699017B2 patent drawing
  • US10699017B2 patent drawing

AI summary

Example embodiments relate to assessing dynamic security scans using runtime analysis and static code analysis. In example embodiments, a system performs static code analysis of a web application to identify reachable code and/or data entry points, where the data entry points are used to determine an attack surface size for the web application. At this stage, the system may initiate runtime monitoring for a dynamic security scan of the web application, where the runtime monitoring detects invocation of a statement at one of the data entry points. The invocation is logged as an invocation entry that comprises invocation parameters and/or code units that were executed in response to the invocation. The system may then determine an attack surface coverage of the dynamic security scan using the invocation entry and the attack surface size and/or a reachable code coverage using the invocation entry and the reachable code.