Automated Defense from Rootkit Attacks



Similar documents
Automated Containment of Rootkits Attacks

A Virtual Machine Introspection Based Architecture for Intrusion Detection

Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A monnappa22@gmail.com

Inside Windows Rootkits

Rootkit: Analysis, Detection and Protection

Traditional Rootkits Lrk4 & KNARK

Distributed System Monitoring and Failure Diagnosis using Cooperative Virtual Backdoors

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Computer Security DD2395

Worms, Trojan Horses and Root Kits

How To Stop A Malicious Process From Running On A Hypervisor

VMWARE Introduction ESX Server Architecture and the design of Virtual Machines

CMSC 421, Operating Systems. Fall Security. URL: Dr. Kalpakis

McAfee Deep Safe. Security beyond the OS. Kai-Ping Seidenschnur Senior Security Engineer. October 16, 2012

A Hypervisor IPS based on Hardware assisted Virtualization Technology

An overwhelming majority of IaaS clouds leverage virtualization for their foundation.

Abstract. 1. Introduction. 2. Threat Model

CS 356 Lecture 25 and 26 Operating System Security. Spring 2013

Virtualization Technology

Host-based Intrusion Prevention System (HIPS)

Run-Time Deep Virtual Machine Introspection & Its Applications

Exploiting the x86 Architecture to Derive Virtual Machine State Information

LSM-based Secure System Monitoring Using Kernel Protection Schemes

Trends in Malware DRAFT OUTLINE. Wednesday, October 10, 12

Virtual Machine Security

VMware Security Briefing. Rob Randell, CISSP Senior Security Specialist SE

Analysis of the Linux Audit System 1

Security Engineering Part III Network Security. Intruders, Malware, Firewalls, and IDSs

Protect Your IT Infrastructure from Zero-Day Attacks and New Vulnerabilities

Driving Company Security is Challenging. Centralized Management Makes it Simple.

Center of Academic Excellence Cyber Operations Program 2013 Application

Windows Operating Systems. Basic Security

Transparent Monitoring of a Process Self in a Virtual Environment

NEW JERSEY STATE POLICE EXAMPLES OF CRIMINAL INTENT

Endpoint Security 2.0: The Emerging Role of Application Whitelisting Solutions. Todd Schell

Detecting Computer Worms in the Cloud

Week Overview. Installing Linux Linux on your Desktop Virtualization Basic Linux system administration

Ovation Security Center Data Sheet

Solution Brief Availability and Recovery Options: Microsoft Exchange Solutions on VMware

2. From a control perspective, the PRIMARY objective of classifying information assets is to:

Malicious Software. Ola Flygt Växjö University, Sweden Viruses and Related Threats

Ovation Security Center Data Sheet

HONE: Correlating Host activities to Network communications to produce insight

CS161: Operating Systems

LASTLINE WHITEPAPER. In-Depth Analysis of Malware

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

Malicious Software. Malicious Software. Overview. Backdoor or Trapdoor. Raj Jain. Washington University in St. Louis

Virtualization. Explain how today s virtualization movement is actually a reinvention

Virtualization. Pradipta De

Chapter 15 Operating System Security

Network Incident Report

Survey on virtual machine security

SubVirt: Implementing malware with virtual machines

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Secure In-VM Monitoring Using Hardware Virtualization

Securely Isolating Malicious OS Kernel Modules Using Hardware Virtualization Support

Attacking Hypervisors via Firmware and Hardware

Full System Emulation:

POACHER TURNED GATEKEEPER: LESSONS LEARNED FROM EIGHT YEARS OF BREAKING HYPERVISORS. Rafal Wojtczuk

Intruders and viruses. 8: Network Security 8-1

Contact details For contacting ENISA or for general enquiries on information security awareness matters, please use the following details:

Analysis of advanced issues in mobile security in android operating system

Detection of virtual machine monitor corruptions

6.828 Operating System Engineering: Fall Quiz II Solutions THIS IS AN OPEN BOOK, OPEN NOTES QUIZ.

Security Maintenance Practices. IT 4823 Information Security Administration. Patches, Fixes, and Revisions. Hardening Operating Systems

Tamper-Resistant, Application-Aware Blocking of Malicious Network Connections

Hands-On Ethical Hacking and Network Defense Second Edition Chapter 8 Desktop and Server OS Vulnerabilities

Virtualization Technologies

Virtual Machines and Security Paola Stone Martinez East Carolina University November, 2013.

Chapter 5 Cloud Resource Virtualization

Virtual Hosting & Virtual Machines

Total Defense Endpoint Premium r12

Virtualization for Security

Virtualization Technology. Zhiming Shen

CYBERTRON NETWORK SOLUTIONS

Server Forensics: Linux

WORMS : attacks, defense and models. Presented by: Abhishek Sharma Vijay Erramilli

Symantec Protection Suite Enterprise Edition for Servers Complete and high performance protection where you need it

How To Protect A Network From Attack From A Hacker (Hbss)

Observation and Findings

Linux Kernel Architecture

EXPLORING LINUX KERNEL: THE EASY WAY!

Management of VMware ESXi. on HP ProLiant Servers

INTRUSION DETECTION SYSTEM (IDS) by Kilausuria Abdullah (GCIH) Cyberspace Security Lab, MIMOS Berhad

Windows 7, Enterprise Desktop Support Technician

PFP Technology White Paper

Computer Viruses: How to Avoid Infection

Transcription:

Automated Defense from Rootkit Attacks Arati Baliga and Liviu Iftode Computer Science Department Rutgers University 110 Frelinghuysen Road, Piscataway, NJ Xiaoxin (Mike) Chen VMware Inc. 3145 Porter Drive Palo Alto, CA 1

About Us Laboratory of Distributed Computing (DISCO Lab) Headed by Prof. Liviu Iftode 10 graduate students http://discolab.rutgers.edu Projects Remote Healing Using Backdoors Remote repair/recovery of operating system and application state. Defensive Architectures Automated defense against attacks and intrusions 2

Outline Motivation Background Our Approach Prototype Work in Progress Future Work Related Work Conclusion 3

Motivation With the increasing attack trends, human response to intrusions is too slow or not possible Software and OS vulnerabilities Fast spreading worms (SQL Slammer) We need systems that can detect intrusions automatically as early as possible and recover 4

Outline Motivation Background Our Approach Prototype Work in Progress Future Work Related Work Conclusion 5

Viruses and Worms Viruses 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 Worms are stand-alone programs that spread through the network by exploiting vulnerabilities in services. 6

Rootkits Collection of tools used by the attacker to hold root privileges on the compromised system. Rootkit hiding mechanism: User-level rootkits Replace system binaries like ps and netstat Shared library rootkits Replace shared libraries Kernel-level rootkits Replace entries in system call table Replace entries in interrupt descriptor table Replace kernel/module text. Compromise system integrity 7

Stealth Malware Increasing number of virus/worm writers use rootkits to evade detection from anti-virus software. Stealth AOL worm In this talk, we refer to this group of malware that hide using rootkit techniques as stealth malware. 8

Intrusion Timeline Happens at time t1 Manifests at time t2 Detected at time t3 Damage done to the system Damage done to the system from t1-t3 needs to be discovered and undone this takes time! Ideally intrusion should be detected at t1(prevention) Easier for known attacks Hard for new/unknown attacks Intrusion Detection Systems Move t3 closer to t2 Recover (undo damage) Can t3 be moved between t1 and t2? 9

Intrusion Detection Systems (IDS) Detection methods Signature based detection Misuse detection Anomaly detection Detection Location Host Based IDS Network Based IDS 10

IDS Implementation Stand-alone systems: Copilot[Arbaugh et al], Backdoors[Bohra et al] Independent secure device Polling based approaches Does not consume CPU cycles Virtualized Environment [VMI, Mendel et al] Can intercept events in the virtual machine Can interpose/change virtual machine state to perform preventive/healing actions 11

Ideal IDS Properties Prevent system from being compromised Detect intrusion asap if prevention is not possible. Once intrusion is detected, recover the system to restore faith in the system. Transparently Reveal to the user the damage that has occurred. Generate an attack profile 12

Outline Motivation Background Our Approach Prototype Work in Progress Future Work Related Work Conclusion 13

Our Approach Detect malicious process when it performs illegal access to protected zones. Track dependencies between files and processes to undo damage automatically Undo damage 14

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. 15

Protected Zones (cont d) Core System Files Normally do not change during the lifetime of the system Examples: ps, ls, netstat, etc. Service Files Can be added by administrator depending on which service needs to be protected. Example: apache binary 16

Our Approach Detect malicious process when it performs illegal access to protected zones. Track dependencies between files and processes to undo damage automatically Undo damage 17

Track Dependencies Infer dependencies Dependencies between files and processes. Parent-child relationships between processes. Store dependencies Create a tree of dependencies (Dependency tree) Dependency tree is stored in a database. Dependency tree size has to be small enough to provide fast undo. 18

Infer Dependencies Get system call data (number, arguments) Page directory base identifies process uniquely cr3 register on the x86 platform File identified by full pathname 19

Infer Dependencies (cont d) On fork Child has same <esp,eip> but different cr3 When processes executed from the same program, fork at a given point, all children have same <esp,eip> Ambiguities are resolved using physical page number of stack page Relies on Linux fork copy-on-write semantics Apply dependency rules 20

Dependency Tree P2 P1 P3 c F1 P4 c F2 P1 creates P2 P2 exits P1 creates P3 P1 creates P4 P3 creates F1 P4 creates F2 F1 is deleted P4 exits P1 exits 21

Dependency Storage Size of the dependency tree created is proportional to the number of new files and processes created on the file system. Storage requirements are modest Dependency rules prune entries that are no longer required The dependency tree lives until system is rebooted 22

Our Approach Detect malicious process when it performs illegal access to protected zones. Track dependencies between files and processes to undo damage automatically Undo damage Identify and kill malicious processes using the dependency tree Files not deleted 23

Containment Steps Assumes a process resident set that always exists in the system. Refer to dependency tree and locate malicious subtree Kill all possible malicious processes Prevents ill-effects Installation/Existence of backdoors. Keyloggers 24

Containment Algorithm P0 P0 in the resident set P2 Malicious write P1 P3 c P4 c F2 Malicious subtree F1 25

Outline Motivation Background Our Approach Prototype Work in Progress Future Work Related Work Conclusion 26

Paladin Prototype 27

System Calls mmap, sockets, named pipes will be added later 28

Implementation Details Guest OS must be non-pageable Paladin driver Has knowledge of Guest OS kernel Performs symbol lookup of kernel text and jump tables Also responsible for carrying out undo actions 29

Performance Evaluation VMware workstation software Database: MySQL Guest OS and Host OS: Linux 2.4 kernel. System calls System calls Optimized VMM (slow path) (slow path) (Fast path syscalls) Without Paladin With Paladin Kernel Copy 7 mins and 29 secs 8 mins 30 secs 3 mins and 46 secs Compile 53 mins and 3 secs 56 mins and 7 secs 31 mins and 54 secs Kernel 30

System Calls Tracked Total system calls v/s system calls processed by Paladin Performance of individual system calls 31

Test Cases User level rootkit Ambient Rootkit (ARK) Kernel level rootkit SuckIt Linux Worm Lion 32

User-Level Rootkit: Ambient (ARK) /bin/login Point of detection The security framework prevents corruption of all the system tools 33

Kernel-Level Rootkit: SuckIt Modifies instructions in sys_call to redirect to it s own system call table. Does not touch original system call table Works even when kernel module support is disabled Provides covert backdoor that is activated on receiving a special packet. The security framework prevents corruption of kernel text and installation of the backdoor. 34

Worm: Lion c /bin/mv c /bin/ps Detection point 35

Limitations Current implementation does not prevent Corruption of resident processes Overwriting disk blocks. Rootkit attacks that corrupt data without changing any kernel code or tables are not detected Ex: FU rootkit (Next generation rootkits?) 36

Outline Motivation Background Our Approach Prototype Work in Progress Future Work Related Work Conclusion 37

Work in Progress: Fingerprinting Early attack identification through fingerprint matching Find them before they hide Automated identification of attacker s files 38

Fingerprinting Steps 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. 39

Example: ARK Fingerprint Processes: /tmp/ark1.01/ark /bin/rm /sbin/syslogd /bin/cp /usr/sbin/sshd /bin/chmod /bin/cat /bin/hostname /sbin/ifconfig /bin/grep /bin/awk /bin/sed /sbin/modprobe /usr/lib/sendmail /usr/lib/libhesiod.so.0 Files created /dev/capi20.20 /sbin/syslogd /usr/lib/.ark? /bin/login /usr/sbin/sshd /bin/ls /usr/bin/du /bin/ps /usr/bin/pstree /usr/bin/killall /usr/bin/top /bin/netstat /var/run/syslogd.pid /var/spool/clientmqueue/dfj99kxukx001449 /var/spool/clientmqueue/tfj99kxukx001449 /var/spool/clientmqueue/dfj99l0hix001457 /var/spool/clientmqueue/tfj99l0hix001457 /var/spool/clientmqueue/dfj99l0cv1001466 /var/spool/clientmqueue/tfj99l0cv1001466 /var/spool/clientmqueue/dfj99l0w2m001475 /var/spool/clientmqueue/tfj99l0w2m001475 40

Future Work Intrusion detection through system call anomalies Generate behavioural profiles using statistical/learning techniques Intrusion detection through network packet monitoring Collaborative detection across VMs Sharing attack fingerprints Cross node detection 41

Outline Motivation Background Our Approach Prototype Future Work Related Work Conclusion 42

Related Work Model for Intrusion Detection VMI Automated Detection Copilot, Strider Ghostbuster, Tripwire Automated Post-Intrusion Analysis and Repair Repairable File Service Backtracker Automated Online Defense Introvert, Vigilante 43

Model for Intrusion Detection VMI Virtual Machine based Introspection (VMI) for Intrusion Detection [NDSS 03] 44

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] 45

Post-Intrusion Analysis and Repair Aid to the administrator Fix the filesystem and keep good changes Find 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] 46

Online Defense Provides online defense against intrusions Introvert Detecting Past and Present Intrusions Through Vulnerability-Specific Predicates [SOSP 05] Vigilante Vigilante: End-to End Containment of Internet Worms [SOSP 05] 47

Conclusion The steadily increasing rate of attacks and intrusions requires a robust automated solution We have designed an approach that protects the system from rootkit attacks and contains the effects of stealth malware that use rootkits to hide. We developed a prototype that demonstarted our approach that could sucessfully counter a user-level rootkit, a kernel-level rootkit and a worm that used rootkit techniques to hide 48

Thank You! http://discolab.rutgers.edu This work is supported by NSF CCR #0133366 49