0% found this document useful (0 votes)
128 views1 page

Windows Memory Analysis in Depth: Cheat Sheet For

This document provides a cheat sheet for Windows memory analysis, including summaries of common tools, syntax, assembly instructions, and historical advances in the field. It lists tools like bulk_extractor, grep, and srch_strings and their basic syntax. Common x86 registers and their uses are defined. Short summaries of important developments in memory forensics are provided from 2005 to 2012, including early rootkits, seminal research papers, and the first prosecution based on memory analysis.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
128 views1 page

Windows Memory Analysis in Depth: Cheat Sheet For

This document provides a cheat sheet for Windows memory analysis, including summaries of common tools, syntax, assembly instructions, and historical advances in the field. It lists tools like bulk_extractor, grep, and srch_strings and their basic syntax. Common x86 registers and their uses are defined. Short summaries of important developments in memory forensics are provided from 2005 to 2012, including early rootkits, seminal research papers, and the first prosecution based on memory analysis.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

 

FORENSICS 526:
Cheat Sheet for   Windows Memory Analysis In Depth 

 
METHODS IN MEMORY ANALYSIS  Bulk Extractor – Stream‐based Parser  Common Assembly Instructions                 s             
The shortcuts and tips on this cheat sheet are  bulk_extractor <options> imagefile 
PUSH  Push onto stack  (PUSH Source) 
provided to sharpen your skills and speed your  ‐e          use specified scanner + defaults 
response time as we navigate through SANS FOR526;  POP  Pop from stack   (POP Dest) 
‐E    use specified scanner ONLY 
Windows Memory Analysis In Depth.         
‐r    alert list  Add Dest,Source  
ADD 
Tool Usage & Syntax  (Dest=Dest+Source) 
‐w    stop (white) list 
grep‐ searches specified file for a PATTERN  ‐O    output directory (to be created)  SUB  Subtract Dest,Src (Dest=Dest‐Src) 
grep <option> PATTERN <file>  AND  Logical AND  (AND Dest, Source) 
Common x86 Registers and Uses 
      ‐i      case insensitive pattern 
EAX  Addition, multiplication, function results  OR  Logical OR  (OR Dest, Source) 
  ‐v  show all that do not contain 
‐b     print byte offset with output 
ECX  Counter  MOV  Move (copy)  (Dest=Source) 
      ‐A#     print # lines after match  Base for referencing function arguments  XCHG  Exchange  (A=B, B=A) 
EBP 
 
(EBP+value) and local variables (EBP‐
  ‐B#  print # lines before match  JMP 
value)  Unconditional Jump 
‐C#     print # lines before & after 
ESP  Points to the current “top” of the stack;  JNZ  Jump if not zero 
  \   special character escape    changes via PUSH, POP, and others  JZ 
srch_strings ‐ outputs character strings                Jump if zero 
(default min. 4 chars in length)  EIP  Points to the next instruction 
CALL  Call Subroutine 
srch_strings <option> <file> >  Contains flags that store outcomes of 
EFLAGS
output.txt  computations (e.g., Zero and Carry flags)  Logical Excl OR  
  XOR 
‐a  scans an entire file, not  (Dest=Dest(exor)Source) 
just data section  Historical Advances in Memory Analysis  Grabs value from top of stack and 
‐b     print byte offset with output  RETN 
2005  DFRWS hosted Memory Analysis Challenge jumps to that location 
      ‐#      sets min length of characters 
2005 
FU & Shadow Walker Rootkit created by  CMP  Performs an implied subtraction 
     ‐e      Unicode (16 bit) strings  Jamie Butler 
 
    l (little endian)    http://queue.acm.org/detail.cfm?id=1217264  TEST  Performs an implied Boolean AND 
xxd    ‐    hexadecimal file viewer  2007  Using Every Part of the Buffalo in 
DEC  Decreases value by one   (Op=Op‐1) 
xxd <options> <infile> <outfile>  Windows Memory Analysis by J.Kornblum 
‐s <offset>    seek ‐/+ from offset  http://jessekornblum.com/publications/di07.html  Increases value by one    
INC 
      ‐l#     stop output after # bytes  2008  Cold Boot Attack research from Princeton  (Op=Op+1) 
nsrllookup – stream based data parser  https://citp.princeton.edu/research/memory/ 
NOP  No operation 
md5deep * |nsrllookup –s nsrl.kyr.us  2009   First Prosecution based on Memory 
‐u   show only unknown hashes (d)  Forensics – Det. C. Murphy    LEA  Load effective address 
       ‐k     show only known hashes  http://www.youtube.com/watch?v=XIiQIYt8JjI 

    ‐s     nsrl server  2012 


Luka Milkovic presents Dementia, his POC   
  anti‐acquisition tool at CCC   
   http://www.youtube.com/watch?v=Q45uvqvripM 

Authored by Alissa Torres, Certified SANS Instructor. Creative Commons v3 “Attribution” License for this cheat sheet version 1.5.  
 

You might also like