Static Code Analysis for Web App Authorization Anomalies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Gaps in access control policy enforcement in software systems lead to privilege escalation, allowing unauthorized access to sensitive resources and operations, due to missing or inconsistent authorization checks in web applications.

Innovation Solution

The approach involves using static code analysis to identify and detect missing or inconsistent authorization checks in web applications by comparing specifications of methods with and without authorization checks, providing remediation information to correct these issues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual security testing is performed to identify authorization vulnerabilities, then security accuracy is improved, but testing time and resource consumption increase

Engineering Contradiction:
Improvesecurity accuracyVSAvoidtesting time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces manual security testing (mechanical human analysis) with automated static code analysis tools that use pattern recognition and machine learning algorithms to detect authorization vulnerabilities, thereby maintaining high security accuracy while dramatically reducing testing time

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

Solution Approach 2:

The patent introduces an intermediary automated analysis system that acts as a bridge between the codebase and security assessment, using intermediate representations and abstraction layers to efficiently analyze authorization patterns without requiring direct manual inspection of each code element

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If comprehensive static code analysis is performed to detect all authorization issues, then security coverage is improved, but false positive rate increases

Engineering Contradiction:
Improvesecurity coverageVSAvoidfalse positive rate
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent performs preliminary actions by establishing a baseline of legitimate authorization patterns through training on known secure code, enabling the system to distinguish between actual vulnerabilities and benign code structures, thereby reducing false positives while maintaining comprehensive coverage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent dynamically adjusts analysis parameters and thresholds based on code context, project characteristics, and risk profiles, allowing the system to optimize the balance between detection sensitivity and false positive rate for different codebases and vulnerability types

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If detailed specifications are generated for all methods to compare authorization checks, then detection accuracy is improved, but processing complexity increases

Engineering Contradiction:
Improvedetection accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the codebase into functional units and generates specifications only for methods that are likely to contain authorization vulnerabilities based on static analysis heuristics and call graph analysis, reducing processing complexity while maintaining detection accuracy for critical areas

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different levels of specification detail to different methods based on their security criticality, generating comprehensive specifications only for high-risk methods while using lighter analysis for low-risk code, thereby optimizing the balance between detection accuracy and processing complexity

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9171168B2Determine anomalies in web application code based on authorization checks
Publication Date: 2015.10.27 MICRO FOCUS LLC
  • US9171168B2 patent drawing
  • US9171168B2 patent drawing
  • US9171168B2 patent drawing

AI summary

Example embodiments disclosed herein relate to determining an anomaly of a missing authorization or inconsistent authorization in web application code. The web application code is analyzed to identify methods that have authorization checks associated and labeling the identified methods as related to authorization checks. Unidentified methods are associated as non-authorization check methods. The methods are compared to determine the anomaly.