Secure interface for invoking privileged operations
AssigneeAmazon Technologies, Inc.
InventorsEric Jason Brandwine, Matthew Shawn Wilson
Life of this patent
Estimating the term…
Abstract
A formalized set of interfaces (e.g., application programming interfaces (APIs)) is described, that uses a security scheme, such as asymmetric (or symmetric) cryptography, in order authorize and authenticate requests sent to a virtualization later. The interfaces can be invoked to perform security monitoring, forensic capture, and/or patch software systems at runtime. In addition to the foregoing, other aspects are described in the claims, detailed description, and figures.
Claims25
A computer implemented method for securing software modifications in a virtualized computing environment, said method comprising:
- under the control of one or more computer systems configured with executable instructions,
- providing at least one application programming interface (API) configured to receive requests submitted to a host computing device, the host computing device including a virtualization layer configured to host one or more guests;
- storing a public key capable of being used to decrypt information on the host computing device, wherein a corresponding private key capable of being used to encrypt the information is stored in a secure location that is external with respect to the host computing device;
- receiving, by the host computing device over the API, a request to execute a privileged operation in the virtualization layer of the host computing device, the request signed using the private key stored in the secure location;
- and
- executing, by the virtualization layer, the privileged operation if a signature of the request is successfully validated using the public key, wherein the privileged operation fails if the signature of the request is unable to be successfully validated using the public key.
A computer implemented method, comprising:
- under the control of one or more computer systems configured with executable instructions,
- generating, during a boot operation of a host computing device, an asymmetric key pair including a public key and a private key;
- publishing the public key;
- receiving, using an interface, a request to execute a privileged operation in a virtualization layer of the host computing device, the request secured by at least the public key;
- verifying the request by the virtualization layer of the host computing device;
- and
- executing the privileged operation in the virtualization layer of the host computing device.
A computing system, comprising:
- at least one processor;
- and
- memory including instructions that, when executed by the processor, cause the computing system to:
- receive, via an application programming interface (API), a request to execute a privileged operation on a virtualization layer of a host computing device, the request secured using at least one key;
- and
- attempt to verify the request by the virtualization layer of the host computing device;
- and
- execute the privileged operation in the virtualization layer of the host computing device if the request is successfully verified.
A non-transitory computer readable storage medium storing one or more sequences of instructions executable by one or more processors to:
- provide an interface to submit requests to a host computing device, the host computing device including at least one virtualization layer;
- receive, using the interface, a request to execute a privileged operation on the virtualization layer of the host computing device, the request secured using at least one key, wherein the secured request can be verified in the virtualization layer of the host computing device;
- attempt to verify the request by the virtualization layer of the host computing device;
- and
- execute the privileged operation in the virtualization layer of the host computing device if the request is successfully verified.
Dependencies are inferred from the claim text.