Patent ID: 8286219

Claim:
A system to run computer software applications in a secure way, comprising: a) at least one computer to run an application; b) a call interceptor to control a load operation of one or more application module dlls while loading the application in computer memory; c) a rule table containing one or more rules associated with the application module that defines if a module is unsafe to load, or if a module needs to be replaced by another updated module; d) a scanning component to gather intelligence about the application module by scanning installed application modules and installation sources; e) an intelligence gathering component that collects information about installed application modules on one or more computers and creates intelligence by comparing installation information, and updating the rule table; f) said rule table contains a rule that marks any module as unsafe to load if the module is not a member of an approved list; g) said rule table contains a rule that marks a module as safe to load if more than a set number of computers in a network are using the module; h) said rule table contains a rule that marks a module as unsafe to load if the module is installed on less than a set number of computers; i) a computer acting as a master framework server by communicating with multiple computer systems to share and distribute rules; j) said rule table contains a rule for application modules that contains licensing information and how to update the module; k) said rule table contains a rule that marks a module safe if the module is installed on a particular system marked as highly trusted; l) a deployment step that extracts one or more matching rules in the rule table for the application module and applies the rule to discontinue application loading if a module is unsafe to load, or to continue application loading with an updated module if the module needs to be updated.