Title :
Guest-transparent instruction authentication for self-patching kernels
Author :
Stanley, Dannie M. ; Zhui Deng ; Dongyan Xu ; Porter, Richard ; Snyder, S.
Author_Institution :
Dept. of Comput. Sci., Purdue Univ., West Lafayette, IN, USA
fDate :
Oct. 29 2012-Nov. 1 2012
Abstract :
Attackers can exploit vulnerable programs that are running with elevated permissions to insert kernel rootkits into a system. Security mechanisms have been created to prevent kernel rootkit implantation by relocating the vulnerable physical system to a guest virtual machine and enforcing a W ⊕ KX memory access control policy from the host virtual machine monitor. Such systems must also be able to identify and authorize the introduction of known-good kernel code. Previous works use cryptographic hashes to verify the integrity of kernel code at load-time. The hash creation and verification procedure depends on immutable kernel code. However, some modern kernels contain self-patching kernel code; they may overwrite executable instructions in memory after load-time. Such dynamic patching may occur for a variety of reason including: CPU optimizations, multiprocessor compatibility adjustments, and advanced debugging. The previous hash verification procedure cannot handle such modifications. We describe the design and implementation of a procedure that verifies the integrity of each modified instruction as it is introduced into the guest kernel. Our experiments with a self-patching Linux guest kernel show that our system can correctly detect and verify all valid instruction modifications and reject all invalid ones. In most cases our patch-level verification procedure incurs only nominal performance impact.
Keywords :
Linux; authorisation; cryptographic protocols; data integrity; formal verification; multiprocessing systems; operating system kernels; optimisation; virtual machines; CPU optimization; cryptographic hashes; debugging; dynamic patching; guest-transparent instruction authentication; hash verification procedure; kernel code; kernel rootkits; memory access control policy; multiprocessor compatibility adjustment; self-patching Linux guest kernel; virtual machine; vulnerable physical system; Authentication; Cryptography; Geophysical measurement techniques; Ground penetrating radar; Kernel; Linux; Loading;
Conference_Titel :
MILITARY COMMUNICATIONS CONFERENCE, 2012 - MILCOM 2012
Conference_Location :
Orlando, FL
Print_ISBN :
978-1-4673-1729-0
DOI :
10.1109/MILCOM.2012.6415582