Automated Mobile App Vulnerability Scanner

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Detecting vulnerabilities in applications running on embedded computer systems is difficult and time-consuming, especially since a single application can be compiled into multiple specialized versions with different vulnerabilities, posing risks to user data and system security.

Innovation Solution

A computer system and method that downloads and decrypts specialized applications, extracts disassembly and metadata, and simulates user interactions to test for vulnerabilities and errors, including unencrypted user input, mixed content, false certificates, and data storage issues, using specialized testing logic to identify and report potential security threats.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If automated vulnerability scanning is implemented for embedded applications, then security detection capability is improved, but device complexity increases

Engineering Contradiction:
Improvesecurity detection capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The vulnerability scanning system is divided into separate specialized testing logic modules that can be independently deployed and executed. Each module focuses on specific vulnerability types, allowing the complex scanning functionality to be broken down into manageable, specialized components that reduce overall system complexity while maintaining comprehensive security detection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A specialized testing logic layer is introduced as an intermediary between the embedded application and the vulnerability analysis process. This intermediary layer handles the complexity of vulnerability detection by intercepting application behavior, simulating user interactions, and analyzing security issues without requiring direct modification of the embedded device's core architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple specialized applications are compiled from a single source application, then adaptability to different hardware configurations is improved, but the number of vulnerabilities to detect increases

Engineering Contradiction:
Improvehardware configuration adaptabilityVSAvoidvulnerability detection scope
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The specialized testing logic is designed to universally detect vulnerabilities across multiple specialized applications compiled from the same source code. By analyzing common vulnerability patterns and shared security issues that exist across different hardware configurations, the system can efficiently detect vulnerabilities in all specialized versions without requiring separate detection mechanisms for each application variant.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Vulnerability detection is performed early in the development process by compiling and testing specialized applications before deployment to different hardware configurations. This preliminary action identifies security issues in the source code and compilation process, preventing vulnerabilities from propagating across multiple specialized versions and reducing the overall detection scope needed.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If comprehensive vulnerability testing is performed on embedded applications, then security reliability is improved, but testing time increases

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Vulnerability testing is implemented as a periodic automated process that can be executed at regular intervals during the software development lifecycle. The specialized testing logic continuously monitors for security issues through automated user interaction simulation and vulnerability pattern recognition, providing comprehensive security checking without requiring extensive manual testing time by distributing the testing effort across multiple automated execution cycles.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The vulnerability testing system performs self-service by automatically executing test cases, analyzing application behavior, and generating security reports without requiring constant human intervention. The specialized testing logic autonomously navigates through the embedded application, simulates user interactions, detects vulnerabilities, and documents findings, significantly reducing the time investment required for comprehensive security testing while maintaining high security reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9607145B2Automated vulnerability and error scanner for mobile applications
Publication Date: 2017.03.28 SYNACK
  • US9607145B2 patent drawing
  • US9607145B2 patent drawing
  • US9607145B2 patent drawing

AI summary

In an embodiment, a method comprises downloading an application program to a first storage coupled to a first device, wherein the application program comprises an encrypted portion based on a set of personally identifying data stored on the first storage; configuring the application program to load and execute a pre-compiled library when the application program is launched and which when executed by the first device, causes storing an unencrypted version of the application program on the first storage; launching the application program.