Securing Operating Systems Rootkits - TAPTI SAHA.

Slides:



Advertisements
Similar presentations
COEN 250 Computer Forensics Unix System Life Response.
Advertisements

Using Nagios for Intrusion detection Miguel Cárdenas Montes Elio Pérez Calle Francisco Javier Rodríguez Calonge.
1 Future Technologies Group Shane Canon, canon at nersc dot govSummer Linux Kernel Class Root Kit Protection and Detection Shane Canon October
Mod H-1 Examples of Computer Crimes. Mod H-2 Stuxnet.
ROOTKIT VIRUS by Himanshu Mishra Points to be covered Introduction History Uses Classification Installation and Cloaking Detection Removal.
Web Defacement Anh Nguyen May 6 th, Organization Introduction How Hackers Deface Web Pages Solutions to Web Defacement Conclusions 2.
Rootkits.
Windows Security and Rootkits Mike Willard January 2007.
Vijay krishnan Avinesh Dupat  Collection of tools (programs) that enable administrator-level access to a computer or computer network.  The main purpose.
Lesson 9-Securing a Network. Overview Identifying threats to the network security. Planning a secure network.
ROOT KITS. Overview History What is a rootkit? Rootkit capabilities Rootkits on windows OS Rootkit demo Detection methodologies Good tools for detection.
Guide to Operating System Security Chapter 2 Viruses, Worms, and Malicious Software.
Internet Relay Chat Chandrea Dungy Derek Garrett #29.
Linux Networking and Security Chapter 10 File Security.
Botnets Uses, Prevention, and Examples. Background Robot Network Programs communicating over a network to complete a task Adapted new meaning in the security.
1GMS-VU : Module 2 Introduction to Information and Communication Technologies Module 2 Computer Software.
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
1 Chap 10 Malicious Software. 2 Viruses and ”Malicious Programs ” Computer “Viruses” and related programs have the ability to replicate themselves on.
Hands-On Microsoft Windows Server 2008
Network and Internet Security SYSTEM SECURITY. Virus Countermeasures Antivirus approach ◦Ideal solution: Prevention ◦Not allowing the virus to infect.
Malicious Code Brian E. Brzezicki. Malicious Code (from Chapter 13 and 11)
Rootkits Brent Boe Vasanthanag Vasili.
Rootkits. EC-Council The Problem  Microsoft Corp. security researchers are warning about a new generation of powerful system-monitoring programs, or.
Vijay Krishnan Avinesh Dupat. A rootkit is software that enables continued privileged access to a computer while actively hiding its presence from administrators.
1 CSCD 434 Winter 2013 Lecture 10 Attacks and More Attacks Root kits.
CIS 450 – Network Security Chapter 15 – Preserving Access.
CIS 450 – Network Security Chapter 16 – Covering the Tracks.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Backdoors and Rootkits.
Copyright (C) 2000, Network Associates Technology Inc. Advanced Windows NT/2000 Security (II) Beyond The User Command Shell… Into The Trusted Computing.
1 Chap 10 Virus. 2 Viruses and ”Malicious Programs ” Computer “Viruses” and related programs have the ability to replicate themselves on an ever increasing.
Chapter 10 Malicious software. Viruses and ” Malicious Programs Computer “ Viruses ” and related programs have the ability to replicate themselves on.
LINUX ROOTKITS Chirk Chu Chief Security Officer University of Alaska Statewide System Information Technology Services.
CSC 382: Computer SecuritySlide #1 Firewalls. CSC 382: Computer SecuritySlide #2 Single Host Firewall Simplest type of firewall—one host acts as a gateway.
Mathieu Castets October 17th,  What is a rootkit?  History  Uses  Types  Detection  Removal  References 2/11.
Rootkits. Agenda Introduction Definition of a Rootkit Types of rootkits Existing Methodologies to Detect Rootkits Lrk4 Knark Conclusion.
Week 10-11c Attacks and Malware III. Remote Control Facility distinguishes a bot from a worm distinguishes a bot from a worm worm propagates itself and.
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
Rootkits What are they? What do they do? Where do they come from?
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Network Monitoring.
Instructor: Dr. Harold C. Grossman Student: Subhra S. Sarkar
Malicious Software.
Rootkits, Backdoors, and Trojans ECE 4112 – Lab 5 Summary – Spring 2006 Group 9 Greg Sheridan Terry Harvey Group 10 Matthew Bowman Laura Silaghi Michael.
COEN 250 Computer Forensics Unix System Life Response.
Computer virus Speaker : 蔡尚倫.  Introduction  Infection target  Infection techniques Outline.
Changes in Computer Security Will You Be Better Off?
CIT 380: Securing Computer SystemsSlide #1 CIT 380 Securing Computer Systems Threats.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Rootkits.
"Most people, I think, don't even know what a rootkit is, so why should they care about it?" - Thomas Hesse, President of Sony's Global Digital Business.
VMM Based Rootkit Detection on Android
Lecture 5 Rootkits Hoglund/Butler (Chapters 1-3).
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Covert Channels.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Scanning.
Page 1 Viruses. Page 2 What Is a Virus A virus is basically a computer program that has been written to perform a specific set of tasks. Unfortunately,
Securing a Host Computer BY STEPHEN GOSNER. Definition of a Host  Host  In networking, a host is any device that has an IP address.  Hosts include.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Cosc 4765 Antivirus Approaches. In a Perfect world The best solution to viruses and worms to prevent infected the system –Generally considered impossible.
Botnets A collection of compromised machines
I have edited and added material.
Rootkit A rootkit is a set of tools which take the ability to access a computer or computer network at administrator level. Generally, hackers install.
Botnets A collection of compromised machines
Backtracking Intrusions
IS3440 Linux Security Unit 9 Linux System Logging and Monitoring
Chap 10 Malicious Software.
I have edited and added material.
CSC 382/582: Computer Security
Rootkits Jonathan Hobbs.
Hiding Malware Rootkits
Linux Security.
Chap 10 Malicious Software.
Attacks and More Attacks
Presentation transcript:

Securing Operating Systems Rootkits - TAPTI SAHA

What is a rootkit? Collection of attacker tools installed after an intruder has gained access –Log cleaners –File/process/user hiding tools –Network sniffers –Backdoor programs Root kits are kernel programs which has the ability to hide itself and cover up traces of activities When a root kit is installed, it replaces certain operating system calls and utilities with its own, modified versions of those routines For example, to hide the existence of a file, the root kit intercepts all system calls that can carry a file name argument, such as open(), chdir() and unlink()

Sample Scenario pwdlogger.exe (web passwords logger) compromised system with sniffed passwords encoded using some text based steganography techniques

Why Root kits? If hacker wants to do something to your system, such as plant a virus, a Trojan horse program or spyware, he has to gain access to the system's root directory and the unlimited power that goes with that access. Once established as root, the intruder can modify system commands to hide his tracks from the systems administrator and preserve his root access. Hackers achieve this via a root kit.

Another Example cmd.exe backdoor. exe Compromised system communication with backdoor (covert channel in HTTP or DNS)

Rootkit Goals 1.Remove evidence of original attack and activity that led to rootkit installation. 2.Hide future attacker activity (files, network connections, processes) and prevent it from being logged. 3.Enable future access to system by attacker. 4.Install tools to widen scope of penetration. 5.Secure system so other attackers can’t take control of system from original attacker.

Concealment Techniques Remove log and audit file entries. Modify system programs to hide attacker files, network connections, and processes. Modify logging system to not log attacker activities. Modify OS kernel system calls to hide attacker activities.

Attack Tools Network sniffer –Including password grabber utility Password cracker Vulnerability scanners Autorooter –Automatically applies exploits to host ranges DDOS tools

History of Rootkits 1989: Phrack 25 Black Tie Affair: wtmp wiping. 1994: Advisory CA about SunOS rootkits. 1996: Linux Rootkits (lrk3 released.) 1997: Phrack 51 halflife article: LKM-based rootkits 1998: Silvio Cesare’s kernel patching via kmem. 1999: Greg Hoglund’s NT kernel rootkit paper 2005: Sony ships CDs with rootkits that hide DRM and spyware that auto-installs when CD played. 2006: SubVirt rootkit moves real OS to a VM.

Root kits in Linux Rootkits are also referred to a set of modified and recompiled Unix tools (typically including ps, netstat and passwd) designed to hide any trace of the intruder's presence or existence A rootkit may include programs to monitor traffic, create a back door into the system, alter log files and attack other machines on the network

Rootkit Types User-mode Rootkits –Binary Rootkits replace user programs. Trojans: ls, netstat, ps Trojan backdoors: login, sshd. –Library Rootkits replace system libraries. Intercept lib calls to hide activities and add backdoors. Kernel Rootkits –Modify system calls/structures that all user-mode programs rely on to list users, processes, and sockets. –Add backdoors to kernel itself.

Binary Rootkits Install trojan-horse versions of common system commands, such as ls, netstat, and ps to hide attacker activities.. Install programs to edit attacker activity from log and accounting files. Install trojan-horse variants of common programs like login, passwd, and sshd to allow attacker continued access to system. Install network sniffers.

Binary Rootkit Detection Use non-trojaned programs –ptree is generally uncompromised –tar will archive hidden files, the list with -t –lsof is also generally safe –Use known good tools from CD-ROM. File integrity checks –tripwire, AIDE, Osiris –rpm –V –a –Must have known valid version of database offline or attacker may modify file signatures to match Trojans.

Library Rootkits t0rn rootkit uses special system library libproc.a to intercept process information requested by user utilities. Modify libc –Intercept system call data returning from kernel, stripping out evidence of attacker activities. –Alternately, ensure that rootkit library providing system calls is called instead of libc by placing it in /etc/ld.so.preload

Kernel Rootkits Kernel runs in supervisor processor mode –Complete control over machine. Rootkits modify kernel system calls –execve modified to run Trojan horse binary for some programs, while other system calls used by integrity checkers read original binary file. –setuid modified to give root to a certain user. Advantage—Stealth –Runtime integrity checkers cannot see rootkit changes. –All programs impacted by kernel Trojan horse. –Open backdoors/sniff network without running processes.

Types of Kernel Rootkits Loadable Kernel Modules –Device drivers are LKMs. –Can be defeated by disabling LKMs. –ex: Adore, Knark Alter running kernel in memory. –Modify /dev/kmem directly. –ex: SucKit Alter kernel on disk.

Kernel Rootkit Detection List kernel modules –lsmod –cat /proc/modules Examine kernel symbols (/proc/ksyms ) –Module name listed in [] after symbol name. Check system call addresses –Compare running kernel syscall addresses with those listed in System.map generated at kernel compile. All of these signatures can be hidden/forged.

Rootkit Detection Offline system examination –Mount and examine disk using another OS kernel+image. –Knoppix: live CD linux distribution. Computer Forensics –Examine disk below filesystem level. –Helix: live CD linux forensics tool.

Detection Countermeasures Hide rootkit in unused sectors or in unused fragments of used sectors. Install rootkit into flash memory like PC BIOS, ensuring that rootkit persists even after disk formatting and OS re-installation.

Rootkit Recovery Restore compromised programs from backup –Lose evidence of intrusion. –Did you find all the trojans? Backup system, then restore from tape –Save image of hard disk for investigation. –Restore known safe image to be sure that all trojans have been eliminated. –Patch system to repair exploited vulnerability.

References 1.Oktay Altunergil, “Scanning for Rootkits,” Silvio Cesare, “Runtime kernel kmem patching,” William Cheswick, Steven Bellovin, and Avriel Rubin, Firewalls and Internet Security, 2 nd edition, Anton Chuvakin, “An Overview of UNIX Rootkits,” iDEFENSE whitepaper, Dave Dittrich, “Rootkits FAQ,” Greg Hoglund and Gary McGraw, Exploiting Software: How to Break Code, Addison-Wesley, Samuel T. King et. al., “SubVirt: Implementing malware with virtual machines”, McClure, Stuart, Scambray, Joel, Kurtz, George, Hacking Exposed, 3 rd edition, McGraw-Hill, Peikari, Cyrus and Chuvakin, Anton, Security Warrior, O’Reilly & Associates, pragmatic, (nearly) Complete Loadable Linux Kernel Modules, Marc Russinovich, “Sony, Rootkits and Digital Rights Management Gone Too Far,” management-gone-too-far.aspx management-gone-too-far.aspx 12.Jennifer Rutkowska, “Red Pill: or how to detect VMM using (almost) one CPU instruction,” Ed Skoudis, Counter Hack Reloaded, Prentice Hall, Ed Skoudis and Lenny Zeltser, Malware: Fighting Malicious Code, Prentice Hall, Ranier Wichman, “Linux Kernel Rootkits,”