ML Security Framework for Mobile Apps
Find Innovative SolutionsGenerate 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
Engineering Contradiction Analysis
1Reliability
If comprehensive security analysis of mobile applications is performed, then security coverage is improved, but analysis time and computational resources increase
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.
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.
2Measurement precision
If dynamic analysis of application code is performed, then detection accuracy is improved, but execution overhead increases
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.
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.
3Reliability
If security testing is performed on all application code, then security coverage is improved, but testing complexity increases
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.
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.
Data Source
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.


