COMPONENT ANALYSIS OF SOFTWARE APPLICATIONS ON COMPUTING DEVICES
First Claim
1. A non-transitory computer-readable storage medium storing computer-readable instructions, which when executed, cause a computing system to:
- for an application installed on a computing device of a user, determine components of the application; and
identify, via at least one processor, at least one behavior associated with each of the components, including a first behavior associated with a first component.
7 Assignments
0 Petitions
Accused Products
Abstract
Detection, identification, and control of application behavior dealing with malware, security risks, data privacy, or resource usage can be difficult in an era of complex, composite software applications composed of multiple components. Software applications are analyzed to determine their components and to identify the behaviors associated with each of the components. Components can also be analyzed with respect to similarity of previously known components. Behaviors can include use of personal identifying information or device information, or any actions that can be taken by applications on the device, including user interface displays, notifications, network communications, and file reading or writing actions. Policies to control or restrict the behavior of applications and their components may be defined and applied. In one embodiment this can include the identification of advertising networks and defining policies to permit various opt-out actions for these advertising networks.
45 Citations
32 Claims
-
1. A non-transitory computer-readable storage medium storing computer-readable instructions, which when executed, cause a computing system to:
-
for an application installed on a computing device of a user, determine components of the application; and identify, via at least one processor, at least one behavior associated with each of the components, including a first behavior associated with a first component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
-
a data repository storing component data for known components, the component data including data for a first known component; at least one processor; and memory storing instructions, which when executed on a computing apparatus, cause the computing apparatus to; for a new component in a first application for a computing device of a user, perform a comparison of the new component to the component data; and based on the comparison, make a determination that the new component corresponds to the first known component. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method, comprising:
-
storing, in memory, component data for known components, the component data including data for a first known component; for a new component in a first application for a computing device of a user, perform, via at least one processor, a comparison of the new component to the component data; and based on the comparison, make a determination that the new component corresponds to the first known component. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method, comprising:
-
storing, in memory, a first application comprising computer-readable instructions, which when executed, cause a mobile device of a user to; for a new component of a second application installed on the mobile device, perform a comparison of the new component to component data for known components, the component data including data for a first known component; and based on the comparison, make a determination that the new component corresponds to the first known component; and sending, via at least one processor, over a communication network, the first application for storage in a data processing system for subsequent installation from the data processing system onto the mobile device.
-
-
32. A system, comprising:
-
at least one processor; and memory storing a first application, which when executed on a mobile device of a user, causes the mobile device to; for a new component of a second application installed on the mobile device, perform a comparison of the new component to component data for known components, the component data including data for a first known component; and based on the comparison, make a determination that the new component corresponds to the first known component; and the memory further storing instructions configured to instruct the at least one processor to send the first application to a data processing system so that the first application can be later installed, over a communication network, on the mobile device from the data processing system.
-
Specification