Issue No. 05 - September/October (2011 vol. 8)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TDSC.2010.38
Arati Baliga , Rutgers University, Piscataway
Liviu Iftode , Rutgers University, Piscataway
Vinod Ganapathy , Rutgers University, Piscataway
Rootkits affect system security by modifying kernel data structures to achieve a variety of malicious goals. While early rootkits modified control data structures, such as the system call table and values of function pointers, recent work has demonstrated rootkits that maliciously modify noncontrol data. Most prior techniques for rootkit detection have focused solely on detecting control data modifications and, therefore, fail to detect such rootkits. This paper presents a novel technique to detect rootkits that modify both control and noncontrol data. The main idea is to externally observe the execution of the kernel during an inference phase and hypothesize invariants on kernel data structures. A rootkit detection phase uses these invariants as specifications of data structure integrity. During this phase, violation of invariants indicates an infection. We have implemented Gibraltar, a prototype tool that infers kernel data structure invariants and uses them to detect rootkits. Experiments show that Gibraltar can effectively detect previously known rootkits, including those that modify noncontrol data structures.
Kernel-level rootkits, noncontrol data attacks, invariant inference, static and dynamic program analysis.
Arati Baliga, Liviu Iftode, Vinod Ganapathy, "Detecting Kernel-Level Rootkits Using Data Structure Invariants", IEEE Transactions on Dependable and Secure Computing, vol. 8, no. , pp. 670-684, September/October 2011, doi:10.1109/TDSC.2010.38