Towards Automated Defense From Rootkit Attacks: Arati Baliga and Liviu Iftode
Towards Automated Defense From Rootkit Attacks: Arati Baliga and Liviu Iftode
Internet
Internet
Attacks
Failure
2
9:00pm EST 2:00am GMT 11:00am JST
Viruses/Worms
Viruses have the ability to replicate by modifying a
normal program/file with a copy of itself.
Execution in the host program/file results in the execution
of the virus
Usually needs human action to execute infected progam.
3
Rootkits
Collection of tools used by the attacker to maintain root
on the compromised system. Particularly important as they
compromise system integrity.
4
Stealth Malware
Increasing number of virus/worm writers use rootkits
to evade detection from anti-virus software.
Our approach can contain stealth malware that hide
using rootkit techniques.
Stealth AOL worm
5
Dealing with Rootkit Attacks
Security Model
The intrusion detection system (IDS) should be
independent of the host.
Compromising the host should not lead to a compromise in
the IDS
6
Intrusion Recovery System Location
Stand-alone systems
Independent secure device (secure coprocessor)
Polling based approaches
Non-intrusive (better performance)
Virtualized Environment
Provides a good security model
Near-native performance.
7
Virtual Machines
Have regained popularity
Mainly used for
Hosting Web services
Lowers costs by consolidating idle system resources
Ease of maintenance and operational efficiency
Cross-platform development.
Supports multiple operating systems on the same machine.
Ease of testing and debugging.
8
Virtual Machines
Guest OS 1 Guest OS 2
Guest OS 1 Guest OS 2
IDS
Virtual Machine Monitor (VMM)
Hardware Hardware
10
Automated Detection
Detect malicious process trying to perform illegal
access.
Prevent illegal access to protected zones.
Track dependencies between files and processes.
11
Protected Zones
Fig. 1. Figure shows the protected parts of the memory and filesystem that are shaded
in pink. This represents the core of the system, which is always protected. The
unshaded portions consist of all other files and running programs, which can be
compromised at any time.
13
Dependency Tree
P1 creates P2
P1
P2 exits
P2
P2 P1 creates P3
P4
P1 creates P4
P3 c
P3 creates F1
F2 P4 creates F2
c
F1 is deleted
F1
P4 exits
P1 exits
14
Dependency Storage
Size of the dependency tree created is linearly
proportional to the number of new files created on the
file system.
15
Automated Containment
Detect malicious process trying to perform illegal
access.
Prevent illegal access to protected zones.
Track dependencies between files and processes.
16
Containment
Identify and kill malicious processes.
Prevents ill-effects
Installation/Existence of backdoors.
Keyloggers
17
Containment Algorithm
P0 in the resident set
P0
Malicious subtree
P1
P2
P4
P3 c
Malicious write
F2
c
F1
18
Automated Fingerprinting
Detect malicious process trying to perform illegal access.
Prevent illegal access to protected zones.
Track dependencies between files and processes.
19
Fingerprinting the attack
Dynamic cloning
Spawn a clone upon attack detection
Sandboxing
Reconfigure network properties
Fine-grained monitoring
Watch the processes in the malicious subtree
Finer control possible.
20
Prototype
21
Performance Evaluation
Implemented this framework using VMware workstation
software. The database was located on a separate
machine. Guest and Host OS were Linux 2.4 kernel.
22
Evalution
User level rootkit
Ambient Rootkit (ARK)
Kernel Rootkit
SuckIt
Linux Worm
Lion
23
Ambient Rootkit (ARK)
/bin/login
Point of detection
/bin/ps
Detection point
26
ARK Fingerprint
Processes: Files created
/tmp/ark1.01/ark /dev/capi20.20
/sbin/syslogd
/bin/rm /usr/lib/.ark?
/sbin/syslogd /bin/login
/usr/sbin/sshd
/bin/cp /bin/ls
/usr/sbin/sshd /usr/bin/du
/bin/chmod /bin/ps
/usr/bin/pstree
/bin/cat /usr/bin/killall
/bin/hostname /usr/bin/top
/bin/netstat
/sbin/ifconfig /var/run/syslogd.pid
/bin/grep /var/spool/clientmqueue/dfj99KxukX001449
/bin/awk /var/spool/clientmqueue/tfj99KxukX001449
/var/spool/clientmqueue/dfj99L0HiX001457
/bin/sed /var/spool/clientmqueue/tfj99L0HiX001457
/sbin/modprobe /var/spool/clientmqueue/dfj99L0cv1001466
/var/spool/clientmqueue/tfj99L0cv1001466
/usr/lib/sendmail /var/spool/clientmqueue/dfj99L0w2M001475
/usr/lib/libhesiod.so.0 /var/spool/clientmqueue/tfj99L0w2M001475
27
Future Work
Performance Optimizations
Speed-up system call trapping inside the VMM.
Implement fingerprinting.
Early attack identification through fingerprint matching
Find them before they hide
Automated identification of attacker’s files
Collaborative protocols between VMs to share attack
fingerprints.
28
Related Work
Automated Detection
Copilot, VMI, Strider Ghostbuster, Tripwire
Automated Post-Intrusion Analysis and Repair
Repairable File Service
Backtracker
Automated Containment and Fingerprinting
Introvert
Paladin
29
Automated Detection
Tools available for rootkit detection
Kstat, Chkrootkit, St. Michael, Samhain, F-Secure BlackLight,
RootkitRevealer, Tripwire, AIDE
Copilot
Automated detection from an independent PCI device [Security
‘03]
Strider Ghostbuster
A cross-view diff-based approach. [DSN ‘05]
VMI
Virtual Machine based Introspection (VMI) for Intrusion Detection
[NDSS ‘03]
30
Post-Intrusion Analysis and Repair
Aid the administrator in
Fixing the filesystem by keeping good changes
Finding how the intrusion happened
RFS, Taser
Design, Implementation and Evaluation of Repairable File Service
[DSN ‘03]
The Taser Intrusion Recovery System [SOSP ‘05]
BackTracker
Backtracking Intrusions [SOSP ‘03]
31
People
Arati Baliga, Rutgers University
Liviu Iftode, Rutgers University
Mike Chen, VMware Inc.
Thank You !
32