Rootkits Jonathan Hobbs
What is a rootkit? A tool set installed to grant a user root access First modern rootkits emerged in the mid 1990s Before rootkits there were log cleaners
Goal of a Rootkit Maintain access Execute malware Remain hidden
Types of Rootkits Binary rootkits Kernel- and User-level rootkits Remote & local access Hide processes, connections, files, and user activity Kernel- and User-level rootkits Loadable Kernel Module Firmware rootkits
Installation Rootkit installation can be achieved in two ways Trojan Horse Root or administrator level access Local or remote UNIX rootkit installation process (LKM backdoor example) Disable shell history Setup directory structure for rootkit Freeze system logs Deploy backdoor
Architecture Scanner Scans for vulnerable systems Installer Payload
Payloads Back doors Packet sniffers Log and file wipers Denial of service
Detection Evasion & System Manipulation Techniques include Masquerading Hooking Direct Kernel Object Manipulation (DKOM)
Hooking and Masquerading Rootkit payload pretending to be normal programs’ Windows: using the System Service Dispatch Table (SSDT) https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1588822
DKOM Windows EPROCESS Connected by double-linked lists Rootkit processes hidden by unlinking themselves from the list https://www.symantec.com/avcenter/reference/when.malware.meets.rootkits.pdf
Summary Rootkits have effectively compromised systems by manipulating the core operating system processes Different types of rootkits exist which compromise the system at different levels Rootkits require administrator access to a system for installation and execution
Questions?