Visual Security Analysis Configuration for Mobile Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Configuring static security analysis for mobile applications is complex and prone to errors due to the manual identification of entry points, sources, sinks, and downgraders, often resulting in false positives and requiring specialized programming knowledge.

Innovation Solution

A method and system that allow non-programmers to visually configure security analysis by extracting and presenting UI views, enabling users to select and label components as entry points, sources, or sinks without knowledge of the application's source code, using a combination of static and dynamic analysis to eliminate false positives.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual identification of entry points, sources, sinks, and downgraders is performed, then security analysis accuracy can be improved, but the complexity and time required for configuration increases significantly

Engineering Contradiction:
Improvesecurity analysis accuracyVSAvoidconfiguration complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs automatic identification of entry points, sources, sinks, and downgraders through algorithmic analysis of the application code, eliminating the need for manual configuration by security analysts. The analyzer autonomously scans the codebase, identifies security-relevant components, and generates initial security models without human intervention.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the manual mechanical process of identifying security components with an automated computational system. The algorithmic analyzer uses static and dynamic analysis techniques to automatically detect entry points, sources, sinks, and downgraders, substituting human expertise with machine-based analysis.

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

2Productivity

If automatic algorithmic classification of all text input fields as sources and text display fields as sinks is performed, then configuration time is reduced, but the number of false positives increases

Engineering Contradiction:
Improveconfiguration speedVSAvoidfalse positive rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts the classification of UI components based on their actual usage in the application code. Rather than static classification of all text fields, the analyzer traces data flows and dynamically determines which fields are actual sources or sinks based on their runtime behavior and security context.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies different classification rules to different UI components based on their specific characteristics and context. Each text field is analyzed individually to determine its actual security role, rather than applying a blanket classification rule to all fields of the same type.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If manual security configuration is performed by highly skilled personnel, then analysis accuracy is improved, but the ease of operation decreases and requires specialized knowledge

Engineering Contradiction:
Improvesecurity analysis accuracyVSAvoiduser expertise requirement
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system enables security analysts with limited programming expertise to perform accurate security analysis by providing automated assistance. The tool guides users through the configuration process, automatically identifies security components, and reduces the need for deep programming knowledge while maintaining analysis accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an intermediary automated analysis system that bridges the gap between security analysts and complex codebases. This intermediary tool handles the technical complexity of identifying security components, allowing users to focus on security policy decisions rather than technical implementation details.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9892263B2System, method and apparatus to visually configure an analysis of a program
Publication Date: 2018.02.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9892263B2 patent drawing
  • US9892263B2 patent drawing
  • US9892263B2 patent drawing

AI summary

A method extracts views from an application program, where at least some extracted views include at least one view component, and presenting the extracted views to a user. In response to the user selecting a view component in a presented extracted view, the method presents a form to the user having a plurality of vulnerability types indicated for the selected view component and, for each vulnerability type, provides an ability for the user to set an indicator in the form as to indicate whether the view component is at least one of a source or a sink. The method further includes saving the form containing the user's input in conjunction with a user-provided label for the selected view component and a unique identification of the selected view component, and deriving an analysis policy configuration from the saved form that is formatted for use by a program security analyzer.