System and method for enforcing security policies in a virtual environment
First Claim
1. A method, comprising:
- inserting a security layer in a kernel of a privileged domain of a computer configured to operate in a virtual machine environment, wherein the privileged domain of the computer manages a virtual machine monitor (VMM) and operates logically below one or more guest operating systems;
storing a snapshot of authorized objects in a user space of the privileged domain;
intercepting, by the security layer, a request for an execution of an object in the computer wherein the request for the execution is from a user space of the privileged domain;
verifying an authorization of the object by linking a particular module into a kernel space associated with the privileged domain, wherein the particular module is configured to compute a checksum for the object, access an inventory of a plurality of stored checksums in a memory element, and compare the checksum to the plurality of stored checksums; and
denying the execution of the object if it is not authorized.
10 Assignments
0 Petitions
Accused Products
Abstract
A method in one example implementation includes intercepting a request associated with an execution of an object (e.g., a kernel module or a binary) in a computer configured to operate in a virtual machine environment. The request is associated with a privileged domain of the computer that operates logically below one or more operating systems. The method also includes verifying an authorization of the object by computing a checksum for the object and comparing the checksum to a plurality of stored checksums in a memory element. The execution of the object is denied if it is not authorized. In other embodiments, the method can include evaluating a plurality of entries within the memory element of the computer, wherein the entries include authorized binaries and kernel modules. In other embodiments, the method can include intercepting an attempt from a remote computer to execute code from a previously authorized binary.
-
Citations
20 Claims
-
1. A method, comprising:
-
inserting a security layer in a kernel of a privileged domain of a computer configured to operate in a virtual machine environment, wherein the privileged domain of the computer manages a virtual machine monitor (VMM) and operates logically below one or more guest operating systems; storing a snapshot of authorized objects in a user space of the privileged domain; intercepting, by the security layer, a request for an execution of an object in the computer wherein the request for the execution is from a user space of the privileged domain; verifying an authorization of the object by linking a particular module into a kernel space associated with the privileged domain, wherein the particular module is configured to compute a checksum for the object, access an inventory of a plurality of stored checksums in a memory element, and compare the checksum to the plurality of stored checksums; and denying the execution of the object if it is not authorized. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A logic encoded in one or more tangible non-transitory media that includes code for execution and when executed by a processor is operable to perform operations comprising:
-
inserting a security layer in a kernel of a privileged domain of a computer configured to operate in a virtual machine environment, wherein the privileged domain of the computer manages a virtual machine monitor (VMM) and operates logically below one or more guest operating systems; storing a snapshot of authorized objects in a user space of the privileged domain; intercepting, by the security layer, a request for an execution of an object in the computer wherein the request for the execution is from a user space of the privileged domain; verifying an authorization of the object by linking a particular module into a kernel space associated with the privileged domain, wherein the particular module is configured to compute a checksum for the object, access an inventory of a plurality of stored checksums in a memory element, and compare the checksum to the plurality of stored checksums; and denying the execution of the object if it is not authorized. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An apparatus, comprising:
-
a virtual machine element; a memory element configured to store data; and a processor operable to execute instructions associated with the data, wherein the virtual machine element is configured to; insert a security layer in a kernel of a privileged domain of a computer configured to operate in a virtual machine environment, wherein the privileged domain of the computer manages a virtual machine monitor (VMM) and operates logically below one or more guest operating systems; store a snapshot of authorized objects in a user space of the privileged domain; intercept, by the security layer, a request for an execution of an object in the computer wherein the request for the execution is from a user space of the privileged domain; verify an authorization of the object by linking a particular module into a kernel space associated with the privileged domain, wherein the particular module is configured to compute a checksum for the object, access an inventory of a plurality of stored checksums in a memory element, and compare the checksum to the plurality of stored checksums; and deny the execution of the object if it is not authorized. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification