IP Library Granted Patent US 8,769,676
Granted Patent B1
US 8,769,676 · App. 13/335,727 · Granted Jul 1, 2014

Techniques for identifying suspicious applications using requested permissions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,769,676
App. No.
13/335,727
Granted
Jul 1, 2014
Kind
B1
Abstract

Techniques for identifying suspicious applications are disclosed. In one particular exemplary embodiment, the techniques may be realized as a method for identifying suspicious applications comprising determining one or more clusters of applications in an identified category of applications based on requested permissions of each of two or more applications in each of the one or more clusters of applications, determining a center application of each of the one or more clusters, and determining, using at least one computer processor, a similarity score for an application being evaluated based at least in part on a distance between the application being evaluated and the center application of a closest cluster of the one or more clusters.

Claims (32)

1. A method for identifying suspicious applications comprising:

determining one or more clusters of applications in an identified category of applications based on a distance metric measuring distances between requested permissions of each of two or more applications in each of the one or more clusters of applications;

determining a center application of each of the one or more clusters; and

determining, using at least one computer processor, a similarity score for an application being evaluated based at least in part on a distance between the application being evaluated and the center application of a closest cluster of the one or more clusters.

2. The method of claim 1 , wherein the identified category comprises a category specified by a mobile application distributor for the application being evaluated.

3. The method of claim 1 , wherein determining one or more clusters of applications is performed using hierarchical clustering.

4. The method of claim 1 , wherein determining one or more clusters of applications is performed using K-means clustering.

5. The method of claim 1 , wherein the distance between the application being evaluated and the center application of the closest cluster is computed using a hamming distance.

6. The method of claim 5 , wherein the hamming distance is computed between a bit vector of a requested permission set of the application being evaluated and a bit vector of a requested permission set of the center application of the closest cluster.

7. The method of claim 1 , wherein the distance between the application being evaluated and the center application of the closest cluster is computed using a Euclidean distance.

8. The method of claim 1 , wherein the distance between the application being evaluated and the center application of the closest cluster is computed using a Jaccard distance.

9. The method of claim 1 , wherein applications in the one or more clusters of applications in an identified category of applications comprise applications in an online application store.

10. The method of claim 1 , wherein the requested permissions of each of the two or more applications in each of the one or more clusters of applications are obtained using a manifest file of each of the two or more applications.

11. The method of claim 1 , wherein the requested permissions of each of the two or more applications are filtered prior to determination of a cluster to exclude from consideration permissions which occur in fewer than a specified number of applications.

12. The method of claim 1 , further comprising converting the similarity score for the application being evaluated into an application score.

13. The method of claim 12 , wherein the application score increases as the similarity score based at least in part on a distance between the application being evaluated and the center application of a closest cluster decreases.

14. The method of claim 12 , wherein the conversion of the similarity score to the application score is based at least in part on a clustering algorithm used to determining the one or more clusters of applications.

15. The method of claim 12 , wherein the conversion of the similarity score to the application score is based at least in part on a distance algorithm used to determining the distance between the application being evaluated and the center application of the closest cluster of the one or more clusters.

16. The method of claim 12 , wherein one or more actions are performed in response to a determination that the application has an application score below a specified threshold.

17. The method of claim 16 , wherein one or more actions comprise at least one of: performing static analysis of the application, performing behavioral analysis of the application, performing reputation based analysis of the application, blacklisting the application, and blocking the application.

18. An article of manufacture for identifying suspicious applications, the article of manufacture comprising:

at least one non-transitory processor readable storage medium; and

instructions stored on the at least one storage medium;

wherein the instructions are configured to be readable from the at least one storage medium by at least one processor and thereby cause the at least one processor to operate so as to:

determine one or more clusters of applications in an identified category of applications based on a distance metric measuring distances between requested permissions of each of two or more applications in each of the one or more clusters of applications;

determine a center application of each of the one or more clusters; and

determine a similarity score for an application being evaluated based at least in part on a distance between the application being evaluated and the center application of a closest cluster of the one or more clusters.

19. A system for identifying suspicious applications comprising:

one or more processors communicatively coupled to a network; wherein the one or more processors are configured to:

determine one or more clusters of applications in an identified category of applications based on a distance metric measuring distances between requested permissions of each of two or more applications in each of the one or more clusters of applications;

determine a center application of each of the one or more clusters; and

determine a similarity score for an application being evaluated based at least in part on a distance between the application being evaluated and the center application of a closest cluster of the one or more clusters.

Assignments (4)
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2012
From: KASHYAP, ANAND
To: SYMANTEC CORPORATION
Reel/Frame 027656/0330 →