Ranking software applications by combining reputation and code similarity
First Claim
1. A non-transitory computer readable medium with instructions stored thereon, comprising instructions that when executed cause a processor to:
- receive uploaded content comprising an uploaded software application into an internet application store;
obtain an indication of a creator of the uploaded software application;
determine a content score, based at least in part, on analysis of a portion of the uploaded content based at least in part on a comparison of the uploaded content against known malware;
obtain a reputation score associated with the indicated creator, wherein the reputation score is determined based on characteristics of an account for the indicated creator;
calculate a ranking score for the software application based, at least in part, on the reputation score and the content score; and
determine whether to publish the uploaded software application in the internet application store, comprising instructions that when executed cause the processor to;
publish the uploaded software application responsive to a first relationship between the ranking score and a ranking threshold; and
prevent publication of the uploaded software application responsive to a second relationship between the ranking score and the ranking threshold,wherein the uploaded software application is inaccessible for receiving download requests in the internet application store prior to determining whether to publish.
10 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are systems and methods to combine a reputation score for a software application publisher or vendor and code analysis techniques to provide a method of ranking software applications. A user downloading a software application may be confident that the software application is reliable and does not contain malicious content based on the ranking applied to the particular software application. Code analysis techniques allow for an application ranking even when there may not be enough historical information about the publisher/vendor to create a solid reputation score. A software application rank may be used internally to a software application store prior to making the software application available to the public.
46 Citations
19 Claims
-
1. A non-transitory computer readable medium with instructions stored thereon, comprising instructions that when executed cause a processor to:
-
receive uploaded content comprising an uploaded software application into an internet application store; obtain an indication of a creator of the uploaded software application; determine a content score, based at least in part, on analysis of a portion of the uploaded content based at least in part on a comparison of the uploaded content against known malware; obtain a reputation score associated with the indicated creator, wherein the reputation score is determined based on characteristics of an account for the indicated creator; calculate a ranking score for the software application based, at least in part, on the reputation score and the content score; and determine whether to publish the uploaded software application in the internet application store, comprising instructions that when executed cause the processor to; publish the uploaded software application responsive to a first relationship between the ranking score and a ranking threshold; and prevent publication of the uploaded software application responsive to a second relationship between the ranking score and the ranking threshold, wherein the uploaded software application is inaccessible for receiving download requests in the internet application store prior to determining whether to publish. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system, the computer system comprising:
-
a processor; a network interface communicatively coupled to the processor; and a storage device communicatively coupled to the processor, wherein the processor is configured with computer instructions that when executed cause the processor to; obtain an uploaded software application by an Internet software application store; determine an identity associated with a creator of the uploaded software application; obtain a reputation score for the identity, wherein the reputation score is determined based on characteristics of an account for the indicated creator, wherein the characteristics comprise an indication of a frequency of posting software applications containing malware; analyze the reputation score relative to a defined threshold; and determine whether to publish the uploaded software application in the Internet software application store, comprising instructions that when executed cause the processor to; publish the uploaded software application responsive to a first relationship between the reputation score and the defined threshold; and prevent publication of the uploaded software application responsive to a second relationship between the reputation score and the defined threshold, wherein the uploaded software application is inaccessible for receiving download requests in the internet application store prior to determining whether to publish. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computer system, the computer system comprising:
-
a processor; a network interface communicatively coupled to the processor; and a storage device communicatively coupled to the processor having stored therein instructions that when executed cause the processor to; receive, by an Internet software application store, a software application and a request to publish the received software application; and prevent publication in the Internet software application store of the software application based on a ranking of the software application, wherein the ranking is based, at least in part, on one or more reputation scores and one or more code analysis factors of the software application, wherein the one or more reputation scores are determined based on characteristics of an account for the indicated creator; wherein the one or more code analysis factors are based in part on a comparison of the software application against known malware; wherein publication is prevented for the software application when the ranking of the software application is determined to not pass a ranking threshold, and wherein the received software application is inaccessible for receiving download requests in the Internet software application store prior to publication.
-
-
14. A non-transitory computer readable medium comprising computer executable instructions stored thereon that when executed cause a processor to:
-
receive a software application and a request to publish the software application in an Internet software application store; publish the software application responsive to a first relationship between a ranking of the software application and a ranking threshold; and prevent publication of the software application responsive to a second relationship between the ranking and the ranking threshold, wherein the ranking is based, at least in part, on one or more reputation scores and one or more code analysis factors of the software application, wherein the reputation score is determined based on characteristics of an account for the indicated creator, wherein the one or more code analysis factors are based in part on a comparison of the software application against known malware; and wherein the software application is inaccessible for receiving download requests in the Internet software application store prior to publication.
-
-
15. A method of determining a software ranking of a software application utilizing one or more processors, the method comprising:
-
receiving, by an Internet application store, uploaded content comprising an uploaded software application; obtaining an indication of a creator of the uploaded software application; analyzing, on one or more processors, a portion of the uploaded content to determine a content score for the uploaded software application, wherein the content score is based at least in part on a comparison of the uploaded software application and known malware; obtaining a reputation score associated with the indicated creator, wherein the reputation score is determined based on characteristics of an account for the indicated creator; calculating a ranking score for the uploaded software application based, at least in part, on the reputation score and the content score; publishing the uploaded software application responsive to a first relationship between the ranking score and a ranking threshold; and preventing publication of the uploaded software application responsive to a second relationship between the ranking score and the ranking threshold, wherein the uploaded software application is inaccessible for receiving download requests in the Internet application store prior to publication. - View Dependent Claims (16, 17, 18, 19)
-
Specification