Security auditing and remote attestation via kernel-signed metrics
Systems and methods for security auditing and remote attestation via kernel-signed metrics are described and provide for the ability to collect data from a system to assess its security posture, while maximizing the confidence in that data, and minimizing the ability to compromise that data. Some embodiments provide a secured, attested way of providing data directly from the kernel in order to perform secure auditing, to provide data via remote attestation, or to perform remote secure auditing. Other embodiments provide for usage of a kernel as a smaller-footprint trusted execution environment.
1 . An Information Handling System (IHS) comprising:
a chipset comprising a processor; and
a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution, cause the processor to:
receive a request from an external auditing system for information regarding the IHS;
request, from a kernel of the IHS, the information regarding the IHS;
receive, from the external auditing system, a cryptographic nonce;
provide, to the kernel of the IHS, the cryptographic nonce;
receive, from the kernel of the IHS, the information regarding the IHS comprising a cryptographic signature and the cryptographic nonce, wherein the cryptographic signature was produced using a private key of the IHS; and
provide the information regarding the IHS comprising the cryptographic signature and the cryptographic nonce to the external auditing system for verification and analysis by the external auditing system based at least in part on the cryptographic signature and the cryptographic nonce, whereby the chipset is audited, wherein auditing logic or code on the external auditing system has rules and logic to ascertain what is and is not a proper, valid operation of the chipset under audit;
wherein the information regarding the IHS further comprises information from a secure overlay of a kernel device driver, filesystem, or module of the IHS, and wherein contents of the secure overlay are wrapped in a Trusted Platform Module (TPM) or a secured signing system-signed envelope.
2 . The IHS of claim 1 , wherein the private key is stored in the TPM.
3 . The IHS of claim 2 , wherein the cryptographic signature was produced by the kernel using the private key stored in the TPM.
4 . The IHS of claim 2 , wherein the cryptographic signature was produced by the TPM using the private key stored in the TPM.
5 . A method for security auditing of a chipset via kernel-signed metrics, the method comprising:
requesting, from an Information Handling System (IHS), information regarding the IHS, wherein the requesting, from the IHS, information regarding the IHS comprises requesting information from a secure overlay of a kernel device driver, filesystem, or module of the IHS, and wherein contents of the secure overlay are wrapped in a Trusted Platform Module (TPM) or a secured signing system-signed envelope;
receiving, from the IHS, a response comprising the information regarding the IHS and a cryptographic signature, wherein the information regarding the IHS and the cryptographic signature was provided by a kernel of the IHS, wherein the information regarding the IHS received from the IHS is encrypted, and wherein the cryptographic signature was produced using a private key of the IHS;
determining, based at least in part on a public key associated with the IHS, that the cryptographic signature is valid, wherein the determining further comprises:
decrypting the information regarding the IHS using the public key to produce decrypted information regarding the IHS and the cryptographic nonce; and
determining that the decrypted information regarding the IHS and the cryptographic nonce are valid; and
verifying by an auditing system, based at least in part on the determination that the cryptographic signature is valid, the information regarding the IHS, whereby the chipset is audited, wherein auditing logic or code on the auditing system has rules and logic to ascertain what is and is not a proper, valid operation of the chipset under audit.
6 . The method of claim 5 further comprising:
analyzing the information regarding the IHS to perform a security audit of the IHS.
7 . The method of claim 5 , wherein the private key is stored in the TPM.
8 . The method of claim 7 , wherein the cryptographic signature was produced by the kernel using the private key stored in the TPM.
9 . The method of claim 7 , wherein the cryptographic signature was produced by the TPM using the private key stored in the TPM.
10 . The method of claim 5 , wherein the requesting, from the IHS, information regarding the IHS further comprises:
requesting information from the secure overlay of the filesystem of the IHS.
11 . A memory storage device having program instructions stored thereon that, upon execution by one or more processors of a chipset of one or more Information Handling Systems (IHSs), cause the one or more IHSs to:
receive, by a kernel of the IHS, a request for information regarding the IHS, wherein the information regarding the IHS comprises information from a secure overlay of a kernel device driver, filesystem, or module of the IHS, and wherein contents of the secure overlay are wrapped in a Trusted Platform Module (TPM) or a secured signing system-signed envelope;
receive, by the kernel of the IHS, a cryptographic nonce;
obtain, by the kernel, the information regarding the IHS;
determine a cryptographic signature based at least in part on the cryptographic nonce, the information regarding the IHS, and a private key associated with the IHS; and
provide, by the kernel, the cryptographic nonce, the information regarding the IHS, and the cryptographic signature for verification and analysis by an auditing system, whereby the chipset is audited, wherein auditing logic or code on the auditing system has rules and logic to ascertain what is and is not a proper, valid operation of the chipset under audit.
12 . The memory storage device of claim 11 , wherein the private key is stored in the TPM.
13 . The memory storage device of claim 12 , wherein to determine the cryptographic signature, the program instructions further cause the one or more IHSs to:
obtain, by the kernel, the private key from the TPM; and
determine the cryptographic signature, by the kernel, using the private key stored in the TPM.
14 . The memory storage device of claim 12 , wherein to determine the cryptographic signature, the program instructions further cause the one or more IHSs to:
determine the cryptographic signature, by the TPM, using the private key stored in the TPM.