ML Security Framework for Mobile Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity and sensitivity of mobile application software pose challenges in ensuring the security and safety of applications on mobile devices, as existing technologies lack efficient methods to effectively analyze and protect against malicious behavior.

Innovation Solution

A framework that utilizes a static instrumentation engine, dynamic runtime environment, and machine learning to identify and characterize regions of interest within application code, applying stimuli and monitoring functions to determine safety, leveraging a central intelligence engine, behavior and logic engine, and explorer engine to streamline testing and enforce security policies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If comprehensive security analysis of mobile applications is performed, then security coverage is improved, but analysis time and computational resources increase

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

Solution Approach 1:

The patent segments the application code into regions of interest (ROIs) based on static analysis characteristics. Instead of analyzing the entire application uniformly, the system identifies and focuses on specific code regions that are more likely to contain malicious behavior, such as those with complex control flow, data dependency chains, or patterns indicative of security vulnerabilities. This segmentation enables targeted dynamic analysis of critical regions while skipping routine code execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary static analysis to characterize application behavior, identify regions of interest, and generate test cases before executing the actual security analysis. The static instrumentation engine analyzes code structure, identifies potential security-relevant regions, and prepares targeted test scenarios in advance. This preliminary action reduces the scope of subsequent dynamic analysis by pre-filtering which code regions need intensive testing.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If dynamic analysis of application code is performed, then detection accuracy is improved, but execution overhead increases

Engineering Contradiction:
Improvedetection accuracyVSAvoidexecution overhead
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies different analysis depths and monitoring granularities to different code regions based on their risk profiles. High-risk regions identified through static analysis receive intensive dynamic monitoring and detailed execution traces, while low-risk regions are analyzed with lighter overhead. The behavior and logic engine dynamically adjusts monitoring intensity based on the identified regions of interest, concentrating computational resources where they provide maximum detection value.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs dynamic analysis partially by focusing only on selected regions of interest rather than executing and monitoring the entire application. The static instrumentation engine identifies a subset of critical code paths and instrumentation points, and the behavior engine executes tests only against these selected regions. This partial action maintains detection accuracy for security-relevant behavior while significantly reducing overall execution overhead.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If security testing is performed on all application code, then security coverage is improved, but testing complexity increases

Engineering Contradiction:
Improvesecurity coverageVSAvoidtesting complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the security testing process into distinct phases: static analysis phase for code characterization and region identification, and dynamic analysis phase for executing tests on identified regions. The static instrumentation engine segments the codebase into manageable regions based on control flow graphs, data dependency graphs, and pattern matching. This segmentation transforms the complex task of analyzing entire applications into a systematic multi-stage process with clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a static instrumentation engine as an intermediary layer between the application code and the behavior analysis engine. This intermediary component performs code characterization, identifies regions of interest, and generates targeted test cases before the main security analysis begins. The instrumentation engine acts as a mediator that simplifies the interaction between analysis components and reduces the complexity of coordinating comprehensive security testing across the entire application.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9594905B1Framework for efficient security coverage of mobile software applications using machine learning
Publication Date: 2017.03.14 MAGENTA SECURITY HOLDINGS LLC
  • US9594905B1 patent drawing
  • US9594905B1 patent drawing
  • US9594905B1 patent drawing

AI summary

For one embodiment, a method is described that involves the instrumenting of an application of a computing system with at least one monitoring function, where the monitoring function is capable of operating in a run-time environment during processing of the instrumented application. The movement of data associated with the application is tracked by one or more monitoring functions. This data is at least partially identified by a storage location. Thereafter, a determination is made whether movement of the data from a first storage location to a second storage location is suspicious, and if so, suspicious movement of the data is reported.