×

CLOUD-BASED APPLICATION WHITELISTING

  • US 20110029772A1
  • Filed: 10/15/2010
  • Published: 02/03/2011
  • Est. Priority Date: 12/03/2004
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method comprising:

  • creating and maintaining, by a kernel mode driver executing on a computer system, an in-memory cache including a plurality of entries each of which contain execution authorization information regarding one of a plurality of code modules that have been most recently used by the computer system, said maintaining including adding execution authorization information regarding a newly identified authorized code module or unauthorized code module to an entry of the plurality of entries;

    intercepting, by the kernel mode driver, file system or operating system activity relating to a code module;

    generating, by the kernel mode driver, a cryptographic hash value of the code module;

    determining, by the kernel mode driver, if the code module is authorized to be loaded and executed within the computer system by causing the code module to be authenticated with reference to a multi-level whitelist database architecture, the multi-level whitelist database architecture including a global whitelist database, a local whitelist database and the in-memory cache;

    wherein the global whitelist database is stored remote from the computer system, maintained by a trusted third party service provider and contains cryptographic hash values of approved code modules, which are known not to contain viruses or malicious code;

    wherein the local whitelist database is created based on the global whitelist, stored local to the computer system and contains at least a subset of the cryptographic hash values contained in the global whitelist database;

    wherein said causing the code module to be authenticated includes first consulting the in-memory cache and if execution authorization information for the code module is not present within the in-memory cache, then looking up the generated cryptographic hash value in the local whitelist database and if the generated cryptographic hash value is not found within the local whitelist database, then looking up the generated cryptographic hash value in the global whitelist database;

    allowing the code module to be loaded and executed within the computer system if the cryptographic hash value matches one of the cryptographic hash values of approved code modules within the global whitelist database by causing processing relating to the file system or operating system activity relating to the code module to proceed; and

    wherein the kernel mode driver is implemented in one or more processors and one or more computer-readable storage media associated with the computer system, the one or more computer-readable storage media having instructions tangibly embodied therein representing the kernel mode driver that are executable by the one or more processors.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×