23
Memory Analysis Update Tools & Techniques 2011 Andreas Schuster [email protected] http://computer.forensikblog.de/en/ 1

Memory Analysis Update Tools & Techniques 2011 - SANS

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Memory Analysis Update Tools & Techniques 2011 - SANS

Memory Analysis UpdateTools & Techniques 2011

Andreas [email protected]

http://computer.forensikblog.de/en/

1

Page 2: Memory Analysis Update Tools & Techniques 2011 - SANS

Research

2

Page 3: Memory Analysis Update Tools & Techniques 2011 - SANS

ResearchValidation of a Memory Imager

!Inue, Adelstein and Joyce, 2011

Paper: http://www.dfrws.org/2011/proceedings/10-342.pdf

Slides: http://www.dfrws.org/2011/proceedings/HINOUE-DFRWS2011-Visualizing.pdf

!How can you verify the correctness of a memory imager?

!Metrics: Speed, Completeness, Accuracy, Non-interference

!Approach: Dotplot

many physical memory pages per pixel

color-coded similarity: black (0%) ! white (100%)

blue: all pages are zero

Page 4: Memory Analysis Update Tools & Techniques 2011 - SANS

ResearchValidation of a Memory Imager

Source: H. Inue

Page 5: Memory Analysis Update Tools & Techniques 2011 - SANS

ResearchMicrosoft Windows Command Line

!Stevens and Casey, 2010

Paper: www.dfrws.org/2010/proceedings/2010-307.pdf

Slides: http://www.dfrws.org/2010/proceedings/stevens.pdf

!DOSKEY data not stored in cmd.exe process, but in csrss.exe

!Developed signature for command history descriptor

!Able to find data from closed consoles

!Found that DOSKEY /REINSTALL clears data and restores descriptor to default

Page 6: Memory Analysis Update Tools & Techniques 2011 - SANS

Research Microsoft Windows File System Cache

!Butler and Murdock, 2011

Paper: https://media.blackhat.com/bh-us-11/Butler/BH_US_11_ButlerMurdock_Physical_Memory_Forensics-WP.pdf

!Re-analysed Honeynet Challenge no. 3 and solution by Smith et al.

Misattribution: data of PDF exploit found in virtual address space of AcroRd32.exe, but also in VMwareTray.exe

Missing code: reconstruction of executable files from memory did not yield optimal results

!Improved method, based on kernel file objects and cache

yield for executable files improved by ~ 30%

Page 7: Memory Analysis Update Tools & Techniques 2011 - SANS

ResearchAutomatic Generation of Memory Analysis Plugins

!Brendan Dolan-Gavitt et al., 2011

Paper: http://www.cc.gatech.edu/~giffin/papers/oakland11/DLZ+11.pdf

Slides: http://amnesia.gtisc.gatech.edu/~moyix/OMFW_Virtuoso.pdf

!Learn about undocumented data structures through run-time analysis of live analysis tools and API

trace execution of „training program“ in QEMU

remove unwanted data (interrupts)

translate x86 instructions to Python code

!Result is a Volatility plugin

Page 8: Memory Analysis Update Tools & Techniques 2011 - SANS

Volatility

8

Page 9: Memory Analysis Update Tools & Techniques 2011 - SANS

Volatility 2.0Project Management

!Development team established:AAron Walters („Labarum_x“)Brendan Dolan-Gavitt („moyix“)Michael Cohen („scudette“)Jamie Levy („gleeda“)Mike Auty („ikelos“)Michael Hale Ligh Andrew Case („attrc“)

!Project moved to Google Code (SVN repository, wiki, bug tracker)http://code.google.com/p/volatility/

!Support:development and users mailing lists see http://lists.volatilesystems.com/mailman/listinfo/IRC: #volatility @ Freenode

Page 10: Memory Analysis Update Tools & Techniques 2011 - SANS

Volatility 2.0Expanded Operating Systems Support

!Currently supported:32bit Windows XP Service Pack 2 and 332bit Windows 2003 Server Service Pack 0, 1, 232bit Windows Vista Service Pack 0, 1, 232bit Windows 2008 Server Service Pack 1, 232bit Windows 7 Service Pack 0, 1

!To do:64bit versions of WindowsLinux integrationMac OS X and BSD?

Page 11: Memory Analysis Update Tools & Techniques 2011 - SANS

Volatility 2.0New Functions

!More than 40 plugins, 3rd party plugins were incorporated into distribution

!Housekeeping/internal use (inspectcache, testsuite)

!Enumerate handles to all kind of kernel objects

!Vista (and later) network objects (netscan)

!Scanners for KPCR and KDBG block

!Interactive shell (volshell)

!Patch memory images (patcher)

Page 12: Memory Analysis Update Tools & Techniques 2011 - SANS

Volatility 2.0Caching

!Time-consuming, recurring tasks:locating the KPCRenumerating processesmapping between virtual and physical addresses

!Data can be cached in a hierarchical registry

!Storage options:directories and filesZIP archive

Page 13: Memory Analysis Update Tools & Techniques 2011 - SANS

Inspired by Volatility Linux

!Volatilituxhttp://code.google.com/p/volatilitux/architectures: ARM, x86 (with and without PAE)

!Commands:pslistmemmapmemdmpfilelistfiledmp

Page 14: Memory Analysis Update Tools & Techniques 2011 - SANS

Inspired by Volatility Mac OS X

!Volafoxby and Korean DFRChttp://code.google.com/p/volafox/Based on Research by Matthieu Suiche

!CommandsMachine InformationMounted FilesystemProcess ListKEXT informationenumerate system calls and detect hooksdump processes and kernel extensions

Page 15: Memory Analysis Update Tools & Techniques 2011 - SANS

Graphical User Interfaces

15

Page 16: Memory Analysis Update Tools & Techniques 2011 - SANS

User InterfaceOSVAC

!Cyber Forensics India: OSVAC 1.0 (Open Source Volatilty Addendum by C-DAC)

!http://www.cyberforensics.in/showdownloads.aspx?id=12

!Prerequisites:

Python 2.5

NET Framework

!Incorporates Volatility 1.3

Page 17: Memory Analysis Update Tools & Techniques 2011 - SANS

User InterfaceOSVAC

Osvac version 1.0

C-DAC, Resource Centre for Cyber Forensics- Trivandrum, INDIA 26

4.2.1.1 Process List Selecting Process List shows the list of running/killed/hidden process that could be extracted from the dump. And selecting each process will show the details of files,

Figure 4.2.1.1.1 –Here from the main list RouterNT.exe selected to view the artifacts related to the process. On selection the sub details tabbed view shows the details of artifacts related to the process RouterNT.exe.

For viewing the artifacts related to the selected process, select the corresponding tab views. Here are five tab views for showing the process related artifacts. i.e. Files, Dlls ,Socket(s),Connection(s),Registry. Files – Show the opened files related to the process.

Source: C-DAC

Page 18: Memory Analysis Update Tools & Techniques 2011 - SANS

User InterfaceOSVACOsvac version 1.0

C-DAC, Resource Centre for Cyber Forensics- Trivandrum, INDIA 45

Figure 4.2.1.8.3 –Report with appended information before clearing

Source: C-DAC

Page 19: Memory Analysis Update Tools & Techniques 2011 - SANS

Guided Memory Analysis MANDIANT Redline

!MANDIANT Redline, v1.0.1

!http://www.mandiant.com/products/free_software/redline/

!Method:1.Review processes with high Malware Rating Index,

known-bad mutant name, injected code, hijacked DLL2.Review network connections3.Review memory sections4.Review untrusted handles5.Review hooks6.Review drivers

!Nice GUI

!Detailed reports (e.g. driver stack)

!MRI scoring needs improvement

Page 20: Memory Analysis Update Tools & Techniques 2011 - SANS

Guided Memory Analysis MANDIANT Redline

Page 21: Memory Analysis Update Tools & Techniques 2011 - SANS

Guided Memory AnalysisMANDIANT Redline

Page 22: Memory Analysis Update Tools & Techniques 2011 - SANS

Questions?

22