Auditing Compiled Application Activities for Permission Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering Contradiction Analysis

1Reliability

If users set strict access permissions for mobile applications, then security is improved, but application functionality may be hindered

Engineering Contradiction:
ImprovesecurityVSAvoidapplication functionality
Core Design Contradiction:
ReliabilityVSEase of operation

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #23Feedback

2Ease of operation

If users set permissive access permissions for mobile applications, then application functionality is maintained, but security risks increase

Engineering Contradiction:
Improveapplication functionalityVSAvoidsecurity risks
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #9Preliminary anti-action

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

Engineering Contradiction:
Improveaccuracy of permission recommendationsVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

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.

Inventive Principle:
Principle #2Taking out (Extraction)

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP1892620B1Auditing application activities
Publication Date: 2017.04.19 BLACKBERRY LTD
  • EP1892620B1 patent drawingFigure 1
  • EP1892620B1 patent drawingFigure 2
  • EP1892620B1 patent drawingFigure 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.