Auditing Compiled Application Activities for Permission Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Users and administrators face challenges in setting appropriate access permissions for mobile applications, as current methods lack transparency and efficiency in identifying potential activities, leading to either insufficient restrictions or overly restrictive settings that can hinder trusted applications' proper operation.
Innovation Solution
A method for auditing compiled applications to identify potential activities by analyzing method calls and correlating them with controllable activities, providing a report that helps users set informed permission settings, thereby allowing or denying access to device resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If users set strict access permissions for mobile applications, then security is improved, but application functionality may be hindered
Solution Approach 1:
The patent applies preliminary action by analyzing the application's code before execution to identify potential resource access operations. The system performs static analysis on the compiled application to detect API calls and method invocations that may access device resources, allowing users to review and approve permissions before the application actually executes, thus preventing both security risks and false rejections of legitimate applications.
Solution Approach 2:
The system implements feedback by providing users with a detailed report of the application's potential activities and resource access operations. The analysis results are presented in a user-friendly format showing which resources the application may access, allowing users to make informed decisions about permission grants. This feedback loop enables users to understand the trade-off between security and functionality before making permission decisions.
2Ease of operation
If users set permissive access permissions for mobile applications, then application functionality is maintained, but security risks increase
Solution Approach 1:
The system performs code analysis before the application executes, identifying potential harmful operations in advance. By statically analyzing the compiled application's bytecode and detecting API calls to sensitive resources, the system can warn users about security risks before they occur, preventing malicious applications from executing harmful code while allowing legitimate applications to proceed.
Solution Approach 2:
The patent applies preliminary anti-action by proactively blocking or warning about potentially harmful operations before they can execute. The system identifies suspicious API calls and method invocations that may indicate malicious behavior, and can prevent these operations from occurring by alerting users or blocking the application entirely, thus countering potential security threats before they materialize.
3Measurement precision
If comprehensive code analysis is performed to identify all potential activities, then accuracy of permission recommendations is improved, but analysis time and computational resources increase
Solution Approach 1:
The system extracts only the essential and relevant information from the application code that relates to resource access operations. Instead of analyzing every aspect of the application, it focuses specifically on identifying API calls, method invocations, and bytecode patterns that indicate potential access to device resources. This selective extraction maintains high accuracy in permission recommendations while significantly reducing analysis time and computational overhead.
Solution Approach 2:
The patent applies partial action by performing analysis on a subset of the most critical and commonly used API calls and resource access patterns. Rather than exhaustively analyzing every possible operation, the system focuses on the most relevant security-critical paths, providing sufficiently accurate permission recommendations with reduced analysis time. This approach balances comprehensiveness with efficiency by targeting the most important security concerns.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A compiled application may be audited by analyzing the compiled application to identify methods that may be called during execution of the compiled application. The identified methods may be correlated with controllable activities, i.e., those activities facilitated by public APIs. An audit report may be used to report to a user or administrator indications that the compiled application may attempt certain activities.