Mac Memory Analysis with Volatility. Andrew Case Digital Forensics Researcher Terremark
|
|
|
- Annabella Barber
- 9 years ago
- Views:
Transcription
1 Mac Memory Analysis with Volatility Andrew Case Digital Forensics Researcher Terremark
2 Who Am I? Digital Forensics Terremark Volatility Developer & Registry Decoder Co- Developer Former Blackhat, SOURCE, DFRWS, BSides, and speaker GIAC Certified Forensics Analyst (GCFA)
3 Motivation for this Research There is a good tool for acquisition of memory from Mac machines [1], but no tools for deep analysis of the captured memory Only one public tool, Volafox [7], supports Mac analysis, but not as robustly or as thoroughly as we would like To fix this, we added full Mac support to Volatility Will have a comparison with Volafox at the end
4 Agenda Introduction to Memory Analysis Overview of the Volatility architecture Mac Memory Acquisition Analysis with Volatility Conclusions/Q&A
5 Memory Forensics Introduction 5
6 Introduction Memory analysis is the process of taking a memory capture (a sample of RAM) and producing higher-level objects that are useful for an investigation A memory capture has the entire state of the operating system as well as running applications Including all the related data structures, variables, etc 6
7 The Goal of Memory Analysis The higher level objects we are interested in are in-memory representations of C structures, custom data structures, and other variables used by the operating system With these we can recover processes listings, filesystem information, networking data, etc This is what we will be talking about throughout this presentation 7
8 The Volatility Architecture 8
9 Volatility Most popular memory analysis framework Written in Python Open Source Supports Windows {XP, Vista, 7, 2003, 2008} Supports Linux on Intel and ARM And now supports Mac! Allows for analysis plugins to be easily written Used daily in real forensics investigations 9
10 Volatility Terminology - Vtypes A representation of structures used in the OS, such as size, names, members, types, and offsets Example: '_IMAGE_EXPORT_DIRECTORY': [ 0x28, { 'Base': [ 0x10, ['unsigned int']], 'NumberOfFunctions': [ 0x14, ['unsigned int']], 'NumberOfNames': [ 0x18, ['unsigned int']], 'AddressOfFunctions': [ 0x1C, ['unsigned int']],
11 Volatility Terminology - Profiles A profile is set of vtypes and (optionally) symbol addresses that are used to model a particular OS version This is what allows Volatility plugins to be generic to all the different versions of Windows, Linux, Mac, etc
12 Volatility Terminology Address Spaces Address spaces are used to translate virtual addresses into physical offsets They also prevent the need to convert all memory captures to a linear format
13 Current Address Spaces Memory Management Address Spaces x86 / x64 Arm (Android) Interface (File) Address Spaces Firewire Windows Hibernation Files Crash Dumps EWF Files Lime And a new one for this talk! 13
14 Mac Profiles Mac profiles are built in two steps: 1) The addresses of symbols are gathered from the system s mach_kernel 2) The types are gathered by running dwarfdump on the debug mach_kernel This is contained in the KernelDebugKit This output is then converted into a proper vtype
15 Mac Memory Acquistion 15
16 Native Software Support Modern versions of Mac do not support /dev/mem or /dev/kmem This means that 3 rd party software must be used to access physical memory
17 Mac Memory Reader [1] Main memory acquistion tool Free, but not open source Supports capture from 32 and 64 bit systems running on native hardware as well as from Parallels and VirtualBox guests Does not work with VMware Fusion guests Loads a driver to recreate /dev/mem and captures from it
18 The Capture File Mac Memory Reader creates a mach-o file of captured memory Mach-o is the standard Mac exe format RAM is not contiguous in physical memory so a linear capture would be much bigger than actual RAM size Too big to deal with on 64 bit
19 Mach-O Address Space To handle Mac Memory Reader captures, a mach-o address space was developed Supports 32 and 64 bit captures It parses mach-o files and for each segment gathers: The offset into the file The size of the offset Its mapped address, which is its physical address
20 Recovering Runtime Information 20
21 Runtime Information This rest of this session is focused on orderly recovery of data that was active at the time of the memory capture We will be discussing how to find key pieces of information and then use Volatility to recover them 21
22 Information to be Recovered Processes Memory Maps Open Files Network Connections Network Data Loaded Kernel Modules Rootkit Detection 22
23 No split address space Mach Overview (Almost?) Micro-kernel Only the components that need hardware access run in ring 0 Everything else runs as a userland process Mach is the only mainstream kernel like this The mechanisms needed to make this work tend to be annoying as a memory analysis researcher
24 Mach Processes & Tasks A process (proc) represents a BSD process Its threads are called uthreads A task (task) represents a Mach task Its threads are called Mach Threads and represented by the thread structure
25 Recovering Processes The list of processes is stored in the allproc list Each element of the list is of type struct proc The p_comm member stores the ASCII name of the binary that was executed The p_pid member stores the process ID Other members you would expect: p_uid, p_gid, p_ppid The mac_pslist plugin enumerates this list and prints out the per-process information
26 Recovering Command Line Arguments mac_pslist only recovers the name of the binary that was executed mac_psaux recovers the command line args (**argv) and optionally the env variables The CR3 value for each process is stored in: <proc_structure>.task.map.pmap.pm_cr3 user_stack and p_argslen are used to recover where the args and environment arrays are
27 Recovering Memory Maps The mac_proc_maps plugin recovers per-task memory maps Mimics vmmap or Linux s /proc/<pid>/map For each mapping, it lists: Starting and ending address The mapped file (if any) Makes spotting shared library injection easy A starting point to malware/unknown binary analysis
28 mac_proc_maps output python vol.py --profile=mac32 --profile_file= zip - f 32bit.dump mac_proc_maps p cb ce000 r-x libauditd.0.dylib 1059ce cf000 rw- libauditd.0.dylib 1059cf d2000 r-- libauditd.0.dylib
29 Dumping Memory Maps The mac_dump_map plugin is able to dump the contents of memory mappings inside of particular processes Common usages: Check against virus DBs Binary Analysis Further forensics analysis (strings, file carving, etc)
30 Open Files The mac_lsof plugin lists the files that are opened for each process Similar to /proc/<pid>/fd on Linux Walks the proc.p_fd.fd_ofiles array Checks the vnode type, if DTYPE_VNODE, then it s a regular file and reported Useful to determine file system activity, log files, etc
31 Mount Points The mac_mount plugin recovers all mounted devices and their mount points Mimics the mount command Very useful when integrating disk and memory analysis during an investigation The mount flags can are also good artifacts (read only, no exec, no atime, etc)
32 Dmesg mac_dmesg recovers the kernel s debug buffer Contains a wide range of useful information Viewed on the live machine with the dmesg binary that reads /var/log/kernel.log The contents are very easy to manipulate on disk not so in memory
33 Network Connections mac_netstat emulates the netstat command Lists each connection along with relevant information (src/dst IP address & port, state, etc) Also walks the list of open files and acts on DTYPE_SOCKET entries Obviously useful when investigating network traffic and connections
34 Ifconfig mac_ifconfig emulates the ifconfig command Walks the dlil_ifnet_head list in memory to get each interface, which are represented by ifnet structures For each interface it recovers: The interface name (en0, en1, etc) Any IP addresses MAC Address
35 ARP Table Found in the llinfo_arp list Recovers the ARP table out of memory Useful in IR scenarios to determine which networked devices the investigated machine recently contacted
36 Routing Cache When researching the routing table, I noticed that Mac has a very interesting routing cache Keeps track of connections made to remote IP addresses Statistics about these connections are kept as well including the start time and total packets & bytes
37 Entry Expiry Entries in the cache expire based on the value in net.inet.ip.rtexpire for IPv4 and net.inet6.ip6.rtexpire for IPv6 This time is in seconds The countdown timer starts when there is no more references to the connection So if the memory capture fits in this window, we can recover it
38 What are the expiry times? I asked Mac users for their sysctl value & OS version on twitter and G+ Got about 20 responses, but wasn t conclusive For IPv4: People with the same exact OS version had widely different values Range was from 10 seconds (bad!) up to an hour IPv6 was always 3600 (one hour)
39 Uses of the Routing Cache Malware Analysis & Data Exfil Investgations You know when the current session started You know how much data was sent Beating Rootkits How many rootkits hide from netstat/lsof and other tools using easily detectable techniques? vs how many manipulate the kernel s routing cache? Hint: 0
40 Loaded Kernel Modules The mac_lsmod plugin lists all of the loaded kernel modules (extensions) active on the system This replicates the output of the kextstat command This can lead to further investigation by dumping the executable in memory [14]
41
42 I/O Kit [3] I/O Kit is the framework that allows for development of device drivers as well as the OS es tracking and handling of hardware devices Provides the ability for programmers to hook into a wide range of hardware events and actions
43 The I/O Registry [2] The I/O registry tracks devices that are attached to the computer as well as the classes that represent them The ioreg binary can list all of the registry contents The mac_ioreg plugin provides similar functionality to ioreg
44 Rootkit Detection Most rootkit discussions, whether offensive or defensive, make a distinction between userland (unprivileged) and kernel (fully privileged) rootkits Mac blurs this line with its micro-kernel design When referring to kernel rootkit detection, I mean core parts of the OS and not individual userland applications or services
45 Static Types of Rootkits Alters data that is set at compile-time and never changes Examples: modifying system call table entries, code (.text) instructions, global data structure function pointers These are generally boring from a research perspective and already covered by other projects (Volafox [7], Phrack article [8], etc)
46 Types of Rootkits Cont. Dynamic Alters data that is only created and referenced at runtime Generally includes manipulating live data structures (lists, hash tables, trees) used by the operating system for accounting or for core operations Much more interesting from a research perspective
47 Logkext [4] Logkext is a rootkit that uses the IOKit framework to log keystrokes It accomplishes this by adding a 'giopublishnotification' callback that filters on the 'IOHIKeyboard' service. This effectively gives the rootkit control everytime a key is pressed.
48 Detecting logkext Enumerate the gnotifications hash table Keyed by the type of notification: (giopublishnotification, giofirstpublishnotification, giomatchednotification, giofirstmatchnotification, gioterminatednotification) Each element is a IOServiceNotifier The handler member of IOServiceNotifier points to the callback function We verify that each callback is either: 1. In the kernel 2. In a known kernel module
49 IP Filters [8] Part of the Network Kernel Extension framework Allows for kernel extension programmers to easily hook incoming and/or outgoing network packets These hooks have built-in support for modifying packets in-place! Done with ipf_inject_input and ipf_inject_output
50 IP Filter Rootkits [9] The potential for abuse of these filters is pretty obvious and existing rootkits take advantage of it in different ways We can detect these rootkits by verifying that every IP hook is in a known location Implemented in mac_ip_filter
51 Detecting IP Filter Rootkits We walk the ipv4_filters & ipv6_filters lists These lists are of type ipfilter_list whose elements are ipfilter ipfilter structures hold the name of the filter (might be empty) as well as pointers to the input, output, and detach functions All three of these functions need to be in the kernel or in a known module if set
52 TrustedBSD The TrustedBSD framework provides hooks into a large number of functions in the kernel related to processes, memory, networking, and much more These hooks are meant to be used to enforce security polices & access control From my testing, it seems all Macs have SandBox, Quarantine, and TMSafetyNet loaded by default
53 Abusing TrustedBSD As you can imagine, having an official way to hook the kernel is an attractive features for rootkits The author of the blog was the first to think of this method and implemented a POC rootkit named rex that does it [10, 11] Works by adding malicious trusted policies that allow userland processes to call into the policies in order to gain root privileges
54 Detecting Rex All policies are stored in the global mac_policy_list Each element is of type mac_policy_list_element Name of the policy - <element>.mpc.mpc_name Function pointers - <element>.mpc.mpc_ops We verify that every function pointer is either in the kernel, a known kernel module, or NULL This finds Rex as well as any other malicious policies
55
56 Volafox Comparison Based on Volatility, but does not use the profile/object system So it only supports a small number of OS versions and adding support for a new version is difficult Only a few plugins: Process list, netstat, lsof, mount Only rootkit detection is syscall hooking (static) SVN version supports 32 bit Mac Memory Reader but no 64 bit support
57 Conclusion Volatility now has proper Mac support Everything talked about today exists in the open source repository Instructions on how to access can be found at [15] Much more new functionality will be added over the next couple months Check [12 & 13] for updates
58 References [1] [2] [3] #//apple_ref/doc/uid/tp tpxref101 [4] [5] Memory-Analysis-wp.pdf [6] [7] volafox - [8] /apple_ref/doc/uid/tp ch229-dontlinkelementid_73 [9] [10] [11] [12] [13] [14] [15]
CHAD TILBURY. [email protected]. http://forensicmethods.com @chadtilbury
CHAD TILBURY [email protected] 0 Former: Special Agent with US Air Force Office of Special Investigations 0 Current: Incident Response and Computer Forensics Consultant 0 Over 12 years in the trenches
Detecting Malware With Memory Forensics. Hal Pomeranz SANS Institute
Detecting Malware With Memory Forensics Hal Pomeranz SANS Institute Why Memory Forensics? Everything in the OS traverses RAM Processes and threads Malware (including rootkit technologies) Network sockets,
FATKit: A Framework for the Extraction and Analysis of Digital Forensic Data from Volatile System Memory p.1/11
FATKit: A Framework for the Extraction and Analysis of Digital Forensic Data from Volatile System Memory DFRWS 2006: Work in Progress (WIP) Aug 16, 2006 AAron Walters 4TΦ Research Nick L. Petroni Jr. University
Example of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
Operating System Structures
COP 4610: Introduction to Operating Systems (Spring 2015) Operating System Structures Zhi Wang Florida State University Content Operating system services User interface System calls System programs Operating
Operating System Components
Lecture Overview Operating system software introduction OS components OS services OS structure Operating Systems - April 24, 2001 Operating System Components Process management Memory management Secondary
VMware Server 2.0 Essentials. Virtualization Deployment and Management
VMware Server 2.0 Essentials Virtualization Deployment and Management . This PDF is provided for personal use only. Unauthorized use, reproduction and/or distribution strictly prohibited. All rights reserved.
Oak Ridge National Laboratory Computing and Computational Sciences Directorate. Lustre Crash Dumps And Log Files
Oak Ridge National Laboratory Computing and Computational Sciences Directorate Lustre Crash Dumps And Log Files Jesse Hanley Rick Mohr Sarp Oral Michael Brim Nathan Grodowitz Gregory Koenig Jason Hill
Chapter 14 Virtual Machines
Operating Systems: Internals and Design Principles Chapter 14 Virtual Machines Eighth Edition By William Stallings Virtual Machines (VM) Virtualization technology enables a single PC or server to simultaneously
Virtual Private Systems for FreeBSD
Virtual Private Systems for FreeBSD Klaus P. Ohrhallinger 06. June 2010 Abstract Virtual Private Systems for FreeBSD (VPS) is a novel virtualization implementation which is based on the operating system
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected]
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected] A number of devices are running Linux due to its flexibility and open source nature. This has made Linux platform
Toasterkit - A NetBSD Rootkit. Anthony Martinez Thomas Bowen http://mrtheplague.net/toasterkit/
Toasterkit - A NetBSD Rootkit Anthony Martinez Thomas Bowen http://mrtheplague.net/toasterkit/ Toasterkit - A NetBSD Rootkit 1. Who we are 2. What is NetBSD? Why NetBSD? 3. Rootkits on NetBSD 4. Architectural
CS161: Operating Systems
CS161: Operating Systems Matt Welsh [email protected] Lecture 2: OS Structure and System Calls February 6, 2007 1 Lecture Overview Protection Boundaries and Privilege Levels What makes the kernel different
Virtual machines and operating systems
V i r t u a l m a c h i n e s a n d o p e r a t i n g s y s t e m s Virtual machines and operating systems Krzysztof Lichota [email protected] A g e n d a Virtual machines and operating systems interactions
The Value of Physical Memory for Incident Response
The Value of Physical Memory for Incident Response MCSI 3604 Fair Oaks Blvd Suite 250 Sacramento, CA 95864 www.mcsi.mantech.com 2003-2015 ManTech Cyber Solutions International, All Rights Reserved. Physical
Linux Driver Devices. Why, When, Which, How?
Bertrand Mermet Sylvain Ract Linux Driver Devices. Why, When, Which, How? Since its creation in the early 1990 s Linux has been installed on millions of computers or embedded systems. These systems may
An Introduction to Incident Detection and Response Memory Forensic Analysis
An Introduction to Incident Detection and Response Memory Forensic Analysis Alexandre Dulaunoy - TLP:WHITE [email protected] February 6, 2015 An overview to incident response Detection Analysis Containment Investigation
Chapter 14 Analyzing Network Traffic. Ed Crowley
Chapter 14 Analyzing Network Traffic Ed Crowley 10 Topics Finding Network Based Evidence Network Analysis Tools Ethereal Reassembling Sessions Using Wireshark Network Monitoring Intro Once full content
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
CS 377: Operating Systems Lecture 25 - Linux Case Study Guest Lecturer: Tim Wood Outline Linux History Design Principles System Overview Process Scheduling Memory Management File Systems A review of what
Full and Para Virtualization
Full and Para Virtualization Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF x86 Hardware Virtualization The x86 architecture offers four levels
Tutorial. Reference http://www.openflowswitch.org/foswiki/bin/view/openflow/mininetgettingstarted for more thorough Mininet walkthrough if desired
Setup Tutorial Reference http://www.openflowswitch.org/foswiki/bin/view/openflow/mininetgettingstarted for more thorough Mininet walkthrough if desired Necessary Downloads 1. Download VM at http://www.cs.princeton.edu/courses/archive/fall10/cos561/assignments/cos561tutorial.zip
Encryption Wrapper. on OSX
Encryption Wrapper on OSX Overview OSX Kernel What is an Encryption Wrapper? Project Implementation OSX s Origins and Design NeXTSTEP Legacy NextStep v1 NextStep v3.3 Mac OS X Jobs creates NeXT Apple acquisition
A Hypervisor IPS based on Hardware assisted Virtualization Technology
A Hypervisor IPS based on Hardware assisted Virtualization Technology 1. Introduction Junichi Murakami ([email protected]) Fourteenforty Research Institute, Inc. Recently malware has become more
Outline. Outline. Why virtualization? Why not virtualize? Today s data center. Cloud computing. Virtual resource pool
Outline CS 6V81-05: System Security and Malicious Code Analysis Overview of System ization: The most powerful platform for program analysis and system security Zhiqiang Lin Department of Computer Science
Chapter 5 Cloud Resource Virtualization
Chapter 5 Cloud Resource Virtualization Contents Virtualization. Layering and virtualization. Virtual machine monitor. Virtual machine. Performance and security isolation. Architectural support for virtualization.
Performance Tuning Guidelines for PowerExchange for Microsoft Dynamics CRM
Performance Tuning Guidelines for PowerExchange for Microsoft Dynamics CRM 1993-2016 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying,
Evading Android Emulator
Evading Android Emulator Thanasis Petsas [email protected] [email protected] - www.syssec-project.eu 1 What is a Virtual Machine? A software based computer that functions like a physical machine A
ELEC 377. Operating Systems. Week 1 Class 3
Operating Systems Week 1 Class 3 Last Class! Computer System Structure, Controllers! Interrupts & Traps! I/O structure and device queues.! Storage Structure & Caching! Hardware Protection! Dual Mode Operation
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Mr. Jacob Torrey February 26, 2014 Dartmouth College 153 Brooks Road, Rome, NY 315.336.3306 http://ainfosec.com @JacobTorrey
Memory Forensics: Collecting & Analyzing Malware Artifacts from RAM
Memory Forensics: Collecting & Analyzing Malware Artifacts from RAM ISSA DC Chapter March 15, 2011 Presented by: Inno Eroraha, CISSP, CISM, CHFI, PI NetSecurity Corporation 21351 Gentry Drive, Suite 230
Everything is Terrible
Everything is Terrible A deep dive into provisioning and code signing Hello and welcome to Everything is Terrible. This is a deep dive talk into the processes behind provisioning and code signing on Apple
LAB THREE STATIC ROUTING
LAB THREE STATIC ROUTING In this lab you will work with four different network topologies. The topology for Parts 1-4 is shown in Figure 3.1. These parts address router configuration on Linux PCs and a
Full System Emulation:
Full System Emulation: Achieving Successful Automated Dynamic Analysis of Evasive Malware Christopher Kruegel Lastline, Inc. [email protected] 1 Introduction Automated malware analysis systems (or sandboxes)
Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
FRONT FLYLEAF PAGE. This page has been intentionally left blank
FRONT FLYLEAF PAGE This page has been intentionally left blank Abstract The research performed under this publication will combine virtualization technology with current kernel debugging techniques to
Operating Systems Design 16. Networking: Sockets
Operating Systems Design 16. Networking: Sockets Paul Krzyzanowski [email protected] 1 Sockets IP lets us send data between machines TCP & UDP are transport layer protocols Contain port number to identify
EXPLORING LINUX KERNEL: THE EASY WAY!
EXPLORING LINUX KERNEL: THE EASY WAY! By: Ahmed Bilal Numan 1 PROBLEM Explore linux kernel TCP/IP stack Solution Try to understand relative kernel code Available text Run kernel in virtualized environment
Helping you avoid stack overflow crashes!
Helping you avoid stack overflow crashes! One of the toughest (and unfortunately common) problems in embedded systems is stack overflows and the collateral corruption that it can cause. As a result, we
HONE: Correlating Host activities to Network communications to produce insight
HONE: Correlating Host activities to Network communications to produce insight GLENN A. FINK, PH.D. Senior Scientist, Secure Cyber Systems SEAN STORY, PMP Project Manager, Software Engineering & Architectures
Cloud Computing. Up until now
Cloud Computing Lecture 11 Virtualization 2011-2012 Up until now Introduction. Definition of Cloud Computing Grid Computing Content Distribution Networks Map Reduce Cycle-Sharing 1 Process Virtual Machines
Chapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
ADVANCED MAC OS X ROOTKITS
ADVANCED MAC OS X ROOTKITS DINO A. DAI ZOVI [email protected] Abstract. The Mac OS X kernel (xnu) is a hybrid BSD and Mach kernel. While Unix-oriented rootkit techniques are pretty well known, Mach-based
COS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318/ Introduction u Have
Chapter 3: Operating-System Structures. Common System Components
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1
Advanced ANDROID & ios Hands-on Exploitation
Advanced ANDROID & ios Hands-on Exploitation By Attify Trainers Aditya Gupta Prerequisite The participants are expected to have a basic knowledge of Mobile Operating Systems. Knowledge of programming languages
Chapter 2 System Structures
Chapter 2 System Structures Operating-System Structures Goals: Provide a way to understand an operating systems Services Interface System Components The type of system desired is the basis for choices
Virtualization in Linux KVM + QEMU
CS695 Topics in Virtualization and Cloud Computing KVM + QEMU Senthil, Puru, Prateek and Shashank 1 Topics covered KVM and QEMU Architecture VTx support CPU virtualization in KMV Memory virtualization
PARALLELS SERVER 4 BARE METAL README
PARALLELS SERVER 4 BARE METAL README This document provides the first-priority information on Parallels Server 4 Bare Metal and supplements the included documentation. TABLE OF CONTENTS 1 About Parallels
Redline Users Guide. Version 1.12
Redline Users Guide Version 1.12 Contents Contents 1 About Redline 5 Timeline 5 Malware Risk Index (MRI) Score 5 Indicators of Compromise (IOCs) 5 Whitelists 5 Installation 6 System Requirements 6 Install
Red Hat Linux Internals
Red Hat Linux Internals Learn how the Linux kernel functions and start developing modules. Red Hat Linux internals teaches you all the fundamental requirements necessary to understand and start developing
How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself
How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,
Run-Time Deep Virtual Machine Introspection & Its Applications
Run-Time Deep Virtual Machine Introspection & Its Applications Jennia Hizver Computer Science Department Stony Brook University, NY, USA Tzi-cker Chiueh Cloud Computing Center Industrial Technology Research
Using Process Monitor
Using Process Monitor Process Monitor Tutorial This information was adapted from the help file for the program. Process Monitor is an advanced monitoring tool for Windows that shows real time file system,
matasano Hardware Virtualization Rootkits Dino A. Dai Zovi
Hardware Virtualization Rootkits Dino A. Dai Zovi Agenda Introductions Virtualization (Software and Hardware) Intel VT-x (aka Vanderpool ) VM Rootkits Implementing a VT-x based Rootkit Detecting Hardware-VM
Virtualization. Pradipta De [email protected]
Virtualization Pradipta De [email protected] Today s Topic Virtualization Basics System Virtualization Techniques CSE506: Ext Filesystem 2 Virtualization? A virtual machine (VM) is an emulation
Operating System Structure
Operating System Structure Lecture 3 Disclaimer: some slides are adopted from the book authors slides with permission Recap Computer architecture CPU, memory, disk, I/O devices Memory hierarchy Architectural
Detecting the Presence of Virtual Machines Using the Local Data Table
Detecting the Presence of Virtual Machines Using the Local Data Table Abstract Danny Quist {[email protected]} Val Smith {[email protected]} Offensive Computing http://www.offensivecomputing.net/
Application Compatibility Best Practices for Remote Desktop Services
Application Compatibility Best Practices for Remote Desktop Services Introduction Remote Desktop Services in Windows Server 2008 R2 allows Windows Server to be accessed by multiple users concurrently to
Storm Worm & Botnet Analysis
Storm Worm & Botnet Analysis Jun Zhang Security Researcher, Websense Security Labs June 2008 Introduction This month, we caught a new Worm/Trojan sample on ours labs. This worm uses email and various phishing
Analysis of the Linux Audit System 1
Analysis of the Linux Audit System 1 Authors Bruno Morisson, MSc (Royal Holloway, 2014) Stephen Wolthusen, ISG, Royal Holloway Overview Audit mechanisms on an operating system (OS) record relevant system
Persist It Using and Abusing Microsoft s Fix It Patches
Persist It Using and Abusing Microsoft s Fix It Patches Jon Erickson : isight Partners : [email protected] Abstract: Microsoft has often used Fix it patches, which are a subset of Application
Two Parts. Filesystem Interface. Filesystem design. Interface the user sees. Implementing the interface
File Management Two Parts Filesystem Interface Interface the user sees Organization of the files as seen by the user Operations defined on files Properties that can be read/modified Filesystem design Implementing
winhex Disk Editor, RAM Editor PRESENTED BY: OMAR ZYADAT and LOAI HATTAR
winhex Disk Editor, RAM Editor PRESENTED BY: OMAR ZYADAT and LOAI HATTAR Supervised by : Dr. Lo'ai Tawalbeh New York Institute of Technology (NYIT)-Jordan X-Ways Software Technology AG is a stock corporation
Republic Polytechnic School of Information and Communications Technology C226 Operating System Concepts. Module Curriculum
Republic Polytechnic School of Information and Communications Technology C6 Operating System Concepts Module Curriculum Module Description: This module examines the fundamental components of single computer
Kernel comparison of OpenSolaris, Windows Vista and. Linux 2.6
Kernel comparison of OpenSolaris, Windows Vista and Linux 2.6 The idea of writing this paper is evoked by Max Bruning's view on Solaris, BSD and Linux. The comparison of advantages and disadvantages among
Q-CERT Workshop. Matthew Geiger [email protected]. 2007 Carnegie Mellon University
Memory Analysis Q-CERT Workshop Matthew Geiger [email protected] 2007 Carnegie Mellon University Outline Why live system forensics? Previous techniques Drawbacks and new thinking Approaches to memory acquisition
VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D
ware and CPU Virtualization Technology Jack Lo Sr. Director, R&D This presentation may contain ware confidential information. Copyright 2005 ware, Inc. All rights reserved. All other marks and names mentioned
Virtualization. Types of Interfaces
Virtualization Virtualization: extend or replace an existing interface to mimic the behavior of another system. Introduced in 1970s: run legacy software on newer mainframe hardware Handle platform diversity
Host Configuration (Linux)
: Location Date Host Configuration (Linux) Trainer Name Laboratory Exercise: Host Configuration (Linux) Objectives In this laboratory exercise you will complete the following tasks: Check for IPv6 support
CPS221 Lecture: Operating System Structure; Virtual Machines
Objectives CPS221 Lecture: Operating System Structure; Virtual Machines 1. To discuss various ways of structuring the operating system proper 2. To discuss virtual machines Materials: 1. Projectable of
The programming language C. sws1 1
The programming language C sws1 1 The programming language C invented by Dennis Ritchie in early 1970s who used it to write the first Hello World program C was used to write UNIX Standardised as K&C (Kernighan
Linux Memory Analysis Workshop Session 1 Andrew Case
Linux Memory Analysis Workshop Session 1 Andrew Case Who Am I? Security Analyst at Digital Forensics Solutions Also perform wide ranging forensics investigations Volatility Developer Former Blackhat, SOURCE,
Dongwoo Kim : Hyeon-jeong Lee s Husband
2/ 32 Who we are Dongwoo Kim : Hyeon-jeong Lee s Husband Ph.D. Candidate at Chungnam National University in South Korea Majoring in Computer Communications & Security Interested in mobile hacking, digital
x86 ISA Modifications to support Virtual Machines
x86 ISA Modifications to support Virtual Machines Douglas Beal Ashish Kumar Gupta CSE 548 Project Outline of the talk Review of Virtual Machines What complicates Virtualization Technique for Virtualization
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
Chapter 11: File System Implementation. Operating System Concepts with Java 8 th Edition
Chapter 11: File System Implementation 11.1 Silberschatz, Galvin and Gagne 2009 Chapter 11: File System Implementation File-System Structure File-System Implementation Directory Implementation Allocation
VMWARE Introduction ESX Server Architecture and the design of Virtual Machines
Introduction........................................................................................ 2 ESX Server Architecture and the design of Virtual Machines........................................
Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.
Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures
Raima Database Manager Version 14.0 In-memory Database Engine
+ Raima Database Manager Version 14.0 In-memory Database Engine By Jeffrey R. Parsons, Senior Engineer January 2016 Abstract Raima Database Manager (RDM) v14.0 contains an all new data storage engine optimized
System Structures. Services Interface Structure
System Structures Services Interface Structure Operating system services (1) Operating system services (2) Functions that are helpful to the user User interface Command line interpreter Batch interface
BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note
BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise
Virtualization of Linux based computers: the Linux-VServer project
Virtualization of Linux based computers: the Linux-VServer project Benoît t des Ligneris, Ph. D. [email protected] Objectives: Objectives: 1) Present the available programs that can
Linux Kernel Rootkit : Virtual Terminal Key Logger
Linux Kernel Rootkit : Virtual Terminal Key Logger Jeena Kleenankandy Roll No. P140066CS Depatment of Computer Science and Engineering National Institute of Technology Calicut jeena [email protected]
Advanced Mac OS X Rootkits. Dino Dai Zovi Chief Scientist Endgame Systems
Advanced Mac OS X Rootkits Dino Dai Zovi Chief Scientist Endgame Systems Overview Mac OS X and Mach Why use Mach for rootkits? User mode Mach rootkit techniques Kernel Mach rootkit techniques 2 Why Mach
Microkernels, virtualization, exokernels. Tutorial 1 CSC469
Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,
Eugene Tsyrklevich. Ozone HIPS: Unbreakable Windows
Eugene Tsyrklevich Eugene Tsyrklevich has an extensive security background ranging from designing and implementing Host Intrusion Prevention Systems to training people in research, corporate, and military
Virtual Machines. COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361
s COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361 1 Virtualization! Create illusion of multiple machines on the same physical hardware! Single computer hosts multiple virtual machines
Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
Network Administration and Monitoring
Network Administration and Monitoring Alessandro Barenghi Dipartimento di Elettronica, Informazione e Bioingengeria Politecnico di Milano barenghi - at - elet.polimi.it April 17, 2013 Recap What did we
A Comparative Study on Vega-HTTP & Popular Open-source Web-servers
A Comparative Study on Vega-HTTP & Popular Open-source Web-servers Happiest People. Happiest Customers Contents Abstract... 3 Introduction... 3 Performance Comparison... 4 Architecture... 5 Diagram...
APPLICATION VIRTUALIZATION TECHNOLOGIES WHITEPAPER
APPLICATION VIRTUALIZATION TECHNOLOGIES WHITEPAPER Oct 2013 INTRODUCTION TWO TECHNOLOGY CATEGORIES Application virtualization technologies can be divided into two main categories: those that require an
Distributed System Monitoring and Failure Diagnosis using Cooperative Virtual Backdoors
Distributed System Monitoring and Failure Diagnosis using Cooperative Virtual Backdoors Benoit Boissinot E.N.S Lyon directed by Christine Morin IRISA/INRIA Rennes Liviu Iftode Rutgers University Phenix
CS3600 SYSTEMS AND NETWORKS
CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 2: Operating System Structures Prof. Alan Mislove ([email protected]) Operating System Services Operating systems provide an environment for
Kaseya 2. User Guide. Version 7.0. English
Kaseya 2 Backup User Guide Version 7.0 English September 3, 2014 Agreement The purchase and use of all Software and Services is subject to the Agreement as defined in Kaseya s Click-Accept EULATOS as updated
Basics of Virtualisation
Basics of Virtualisation Volker Büge Institut für Experimentelle Kernphysik Universität Karlsruhe Die Kooperation von The x86 Architecture Why do we need virtualisation? x86 based operating systems are
Soft-Timer Driven Transient Kernel Control Flow Attacks and Defense
Soft-Timer Driven Transient Kernel Control Flow Attacks and Defense Jinpeng Wei, Bryan D. Payne, Jonathon Giffin, Calton Pu Georgia Institute of Technology Annual Computer Security Applications Conference
