Difference between pages "Rekall" and "Windows"

From Forensics Wiki
(Difference between pages)
Jump to: navigation, search
(External Links)
 
(RPC)
 
Line 1: Line 1:
{{Infobox_Software |
+
{{Expand}}
  name = Rekall |
+
  maintainer = [[Michael Cohen]] |
+
  os = {{Cross-platform}} |
+
  genre = {{Memory analysis}}, {{Memory imaging}} |
+
  license = {{GPL}} |
+
  website = [https://code.google.com/p/rekall/ code.google.com/p/rekall/] |
+
}}
+
  
Rekall is the stand-alone continuation of the [[Volatility]] Technology Preview (TP) version, aka the scudette branch.
+
'''Windows''' is a widely-spread [[operating system]] from [[Microsoft]].
  
One of Rekalls goals is to provide better integration with [[GRR]] by improved modularity of the framework and having memory acquisition capability.[http://docs.rekall.googlecode.com/git/overview.html#_history]
+
There are 2 main branches of Windows:
 +
* the DOS-branch: i.e. Windows 95, 98, ME
 +
* the NT-branch: i.e. Windows NT 4, XP, Vista
  
== Memory acquisition drivers ==
+
== Features ==
 +
* Basic and Dynamic Disks, see: [http://msdn.microsoft.com/en-us/library/windows/desktop/aa363785(v=vs.85).aspx]
  
The drivers can be found under:
+
=== Introduced in Windows NT ===
<pre>
+
* [[NTFS]]
rekall/tools/linux
+
rekall/tools/osx
+
rekall/tools/windows
+
</pre>
+
  
=== Linux ===
+
=== Introduced in Windows 2000 ===  
  
To build the kernel module for the current kernel version, make sure you have a working build environment and the kernel headers installed. Change into this directory and run make:
+
=== Introduced in Windows XP ===
<pre>
+
* [[Prefetch]]
cd rekall/tools/linux/
+
* System Restore (Restore Points); also present in Windows ME
make
+
</pre>
+
  
The acquisition driver is named pmem.ko.
+
==== SP2 ====
 +
* Windows Firewall
  
To load the driver:
+
=== Introduced in Windows Server 2003 ===
<pre>
+
* Volume Shadow Copies
sudo insmod pmem.ko
+
</pre>
+
  
To check if the driver is running:
+
=== Introduced in [[Windows Vista]] ===
<pre>
+
* [[BitLocker Disk Encryption | BitLocker]]
sudo lsmod
+
* [[Windows Desktop Search | Search]] integrated in operating system
</pre>
+
* [[ReadyBoost]]
 +
* [[SuperFetch]]
 +
* [[NTFS|Transactional NTFS (TxF)]]
 +
* [[Windows NT Registry File (REGF)|Transactional Registry (TxR)]]
 +
* [[Windows Shadow Volumes|Shadow Volumes]]; the volume-based storage of the Volume Shadow Copy data
 +
* $Recycle.Bin
 +
* [[Windows XML Event Log (EVTX)]]
 +
* [[User Account Control (UAC)]]
  
The driver create a device file named:
+
=== Introduced in Windows Server 2008 ===
<pre>
+
/dev/pmem
+
</pre>
+
  
To unload the driver:
+
=== Introduced in [[Windows 7]] ===
<pre>
+
* [[BitLocker Disk Encryption | BitLocker To Go]]
sudo rmmod pmem
+
* [[Jump Lists]]
</pre>
+
* [[Sticky Notes]]
  
To read acquire the memory just read from the device file. e.g.
+
=== Introduced in [[Windows 8]] ===
<pre>
+
* [[Windows File History | File History]]
dd if=/dev/pmem of=image.raw
+
* [[Windows Storage Spaces | Storage Spaces]]
</pre>
+
* [[Search Charm History]]
 +
* [[Resilient File System (ReFS)]]; Was initially available in the Windows 8 server edition.
  
For more information see:
+
=== Introduced in Windows Server 2012 ===
<pre>
+
* [[Resilient File System (ReFS)]]
rekall/tools/linux/README
+
</pre>
+
  
=== Mac OS X ===
+
== Forensics ==
  
For more information see:
+
=== Partition layout ===
<pre>
+
Default partition layout, first partition starts:
rekall/tools/osx/OSXPMem/README
+
* at sector 63 in Windows 2000, XP, 2003
</pre>
+
* at sector 2048 in Windows Vista, 2008, 7
  
=== Windows ===
+
=== Filesystems ===
Since recent versions of Windows require a signed driver rekall comes with both pre-built (signed binary) and source versions of the driver.
+
* [[FAT]], [[FAT|exFAT]]
 +
* [[NTFS]]
 +
* [[Resilient File System (ReFS) | ReFS]]
  
Both the i386 and amd64 binary version of the driver can be found in the directory:
+
=== Recycle Bin ===
<pre>
+
rekall/tools/windows/winpmem/binaries
+
</pre>
+
  
E.g.
+
==== RECYCLER ====
<pre>
+
Used by Windows 2000, XP.
rekall/tools/winpmem/binaries/amd64/winpmem.sys
+
Uses INFO2 file.
</pre>
+
  
A standalone tool for imaging memory that uses an embedded copy of the pmem driver can be found as winpmem.exe in:
+
See: [http://www.cybersecurityinstitute.biz/downloads/INFO2.pdf]
<pre>
+
rekall/tools/winpmem/executables/Release/
+
</pre>
+
  
To load the driver:
+
==== $RECYCLE.BIN ====
 +
Used by Windows Vista.
 +
Uses $I and $R files.
 +
 
 +
See: [http://www.forensicfocus.com/downloads/forensic-analysis-vista-recycle-bin.pdf]
 +
 
 +
=== Registry ===
 +
 
 +
The [[Windows Registry]] is a database of keys and values that provides a wealth of information to forensic [[investigator]]s.
 +
 
 +
=== Thumbs.db Files ===
 +
 
 +
[[Thumbs.db]] files can be found on many Windows systems. They contain thumbnails of images or documents and can be of great value for the [[investigator]].
 +
 
 +
See also: [[Vista thumbcache]].
 +
 
 +
=== Browser Cache ===
 +
 
 +
=== Browser History ===
 +
 
 +
The [[Web Browser History]] files can contain significant information. The default [[Web browser|web browser]] that comes with Windows is [[Internet Explorer|Microsoft Internet Explorer]] but other common browsers on Windows are [[Apple Safari]], [[Google Chrome]], [[Mozilla Firefox]] and [[Opera]].
 +
 
 +
=== Search ===
 +
See [[Windows Desktop Search]]
 +
 
 +
=== Setup log files (setupapi.log) ===
 +
Windows Vista introduced several setup log files [http://support.microsoft.com/kb/927521].
 +
 
 +
=== Sleep/Hibernation ===
 +
 
 +
After (at least) Windows 7 recovers from sleep/hibernation there often is a system time change event (event id 1) in the event logs.
 +
 
 +
=== Users ===
 +
Windows stores a users Security identifiers (SIDs) under the following registry key:
 
<pre>
 
<pre>
winpmem.exe -l
+
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
 
</pre>
 
</pre>
  
The device filename is (This can not be changed without recompiling):
+
The %SID%\ProfileImagePath value should also contain the username.
 +
 
 +
=== Windows Error Reporting (WER) ===
 +
 
 +
As of Vista, for User Access Control (UAC) elevated applications WER reports can be found in:
 
<pre>
 
<pre>
\\.\pmem
+
C:\ProgramData\Microsoft\Windows\WER\
 
</pre>
 
</pre>
  
Note that running dd directly on this device file can crash the machine.
+
As of Vista, for non-UAC elevated applications (LUA) WER reports can be found in:
Use the winpmem.exe tool instead because it handles protected memory regions.
+
 
+
To read and acquire the physical memory and write it to image.raw:
+
 
<pre>
 
<pre>
winpmem.exe image.raw
+
C:\Users\%UserName%\AppData\Local\Microsoft\Windows\WER\
 
</pre>
 
</pre>
  
To unload the driver:
+
Corresponding registry key:
 
<pre>
 
<pre>
winpmem.exe -u
+
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting
 
</pre>
 
</pre>
  
For more information see:
+
== Advanced Format (4KB Sector) Hard Drives ==
 +
Windows XP does not natively handle drives that use the new standard of 4KB sectors. For information on this, see [[Advanced Format]].
 +
 
 +
== %SystemRoot% ==
 +
The actual value of %SystemRoot% is store in the following registry value:
 
<pre>
 
<pre>
rekall/tools/windows/README
+
Key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\
 +
Value: SystemRoot
 
</pre>
 
</pre>
  
 
== See Also ==
 
== See Also ==
* [[Volatility]]
+
* [[Windows Event Log (EVT)]]
 +
* [[Windows XML Event Log (EVTX)]]
 +
* [[Windows Vista]]
 +
* [[Windows 7]]
 +
* [[Windows 8]]
  
 
== External Links ==
 
== External Links ==
* [https://code.google.com/p/rekall/ Project site]
+
 
* [http://docs.rekall.googlecode.com/git/index.html Project documentation]
+
* [http://en.wikipedia.org/wiki/Microsoft_Windows Wikipedia: Microsoft Windows]
* [http://rekall-forensic.blogspot.com/ Rekall Memory Forensics blog]
+
* [http://support.microsoft.com/kb/927521 Windows 7, Windows Server 2008 R2, and Windows Vista setup log file locations]
 +
* [http://www.forensicfocus.com/downloads/forensic-analysis-vista-recycle-bin.pdf The Forensic Analysis of the Microsoft Windows Vista Recycle Bin], by [[Mitchell Machor]], 2008
 +
* [http://www.ericjhuber.com/2013/02/microsoft-file-system-tunneling.html?m=1 Microsoft Windows File System Tunneling], by [[Eric Huber]], February 24, 2013
 +
* [http://www.nsa.gov/ia/_files/app/Spotting_the_Adversary_with_Windows_Event_Log_Monitoring.pdf Spotting the Adversary with Windows Event Log Monitoring], by National Security Agency/Central Security Service, February 28, 2013
 +
 
 +
=== Malware/Rootkits ===
 +
* [http://forensicmethods.com/inside-windows-rootkits Inside Windows Rootkits], by [[Chad Tilbury]], September 4, 2013
 +
 
 +
=== Program execution ===
 +
* [http://windowsir.blogspot.com/2013/07/howto-determine-program-execution.html HowTo: Determine Program Execution], by [[Harlan Carvey]], July 06, 2013
 +
* [http://journeyintoir.blogspot.com/2014/01/it-is-all-about-program-execution.html It Is All About Program Execution], by [[Corey Harrell]], January 14, 2014
 +
* [http://sysforensics.org/2014/01/know-your-windows-processes.html Know your Windows Processes or Die Trying], by [[Patrick Olsen]], January 18, 2014
 +
 
 +
=== Tracking removable media ===
 +
* [http://www.swiftforensics.com/2012/08/tracking-usb-first-insertion-in-event.html Tracking USB First insertion in Event logs], by Yogesh Khatri, August 18, 2012
 +
 
 +
=== Under the hood ===
 +
* [http://msdn.microsoft.com/en-us/library/windows/desktop/aa366533(v=vs.85).aspx MSDN: Comparing Memory Allocation Methods], by [[Microsoft]]
 +
* [http://blogs.msdn.com/b/ntdebugging/archive/2007/06/28/how-windows-starts-up-part-the-second.aspx How Windows Starts Up (Part the second)]
 +
* [http://msdn.microsoft.com/en-us/library/aa375142.aspx DLL/COM Redirection]
 +
* [http://msdn.microsoft.com/en-us/library/windows/desktop/ms682586(v=vs.85).aspx Dynamic-Link Library Search Order]
 +
* [http://blogs.msdn.com/b/junfeng/archive/2004/04/28/121871.aspx Image File Execution Options]
 +
 
 +
==== MSI ====
 +
* [http://blogs.msdn.com/b/heaths/archive/2009/02/02/changes-to-package-caching-in-windows-installer-5-0.aspx?Redirected=true Changes to Package Caching in Windows Installer 5.0], by Heath Stewart, February 2, 2009
 +
* [http://blog.didierstevens.com/2013/07/26/msi-the-case-of-the-invalid-signature/ MSI: The Case Of The Invalid Signature], by Didier Stevens, July 26, 2013
 +
 
 +
==== Side-by-side (WinSxS) ====
 +
* [http://en.wikipedia.org/wiki/Side-by-side_assembly Wikipedia: Side-by-side assembly]
 +
* [http://msdn.microsoft.com/en-us/library/aa374224.aspx Assembly Searching Sequence]
 +
* [http://blogs.msdn.com/b/junfeng/archive/2007/06/26/rt-manifest-resource-and-isolation-aware-enabled.aspx RT_MANIFEST resource, and ISOLATION_AWARE_ENABLED]
 +
* [http://msdn.microsoft.com/en-us/library/windows/desktop/dd408052(v=vs.85).aspx Isolated Applications and Side-by-side Assemblies]
 +
* [http://blogs.msdn.com/b/junfeng/archive/2006/01/24/517221.aspx#531208 DotLocal (.local) Dll Redirection], by [[Junfeng Zhang]], January 24, 2006
 +
* [http://blogs.msdn.com/b/junfeng/archive/2006/04/14/576314.aspx Diagnosing SideBySide failures], by [[Junfeng Zhang]], April 14, 2006
 +
* [http://omnicognate.wordpress.com/2009/10/05/winsxs/ EVERYTHING YOU NEVER WANTED TO KNOW ABOUT WINSXS]
 +
 
 +
==== Application Experience and Compatibility ====
 +
* [http://technet.microsoft.com/en-us/library/dd837644(v=ws.10).aspx Technet: Understanding Shims], by [[Microsoft]]
 +
* [http://msdn.microsoft.com/en-us/library/bb432182(v=vs.85).aspx MSDN: Application Compatibility Database], by [[Microsoft]]
 +
* [http://www.alex-ionescu.com/?p=39 Secrets of the Application Compatilibity Database (SDB) – Part 1], by [[Alex Ionescu]], May 20, 2007
 +
* [http://www.alex-ionescu.com/?p=40 Secrets of the Application Compatilibity Database (SDB) – Part 2], by [[Alex Ionescu]], May 21, 2007
 +
* [https://dl.mandiant.com/EE/library/Whitepaper_ShimCacheParser.pdf Leveraging the Application Compatibility Cache in Forensic Investigations], by [[Andrew Davis]], May 4, 2012
 +
* [http://journeyintoir.blogspot.ch/2013/12/revealing-recentfilecachebcf-file.html Revealing the RecentFileCache.bcf File], by [[Corey Harrell]], December 2, 2013
 +
* [http://journeyintoir.blogspot.ch/2013/12/revealing-program-compatibility.html Revealing Program Compatibility Assistant HKCU AppCompatFlags Registry Keys], by [[Corey Harrell]], December 17, 2013
 +
 
 +
==== System Restore (Restore Points) ====
 +
* [http://en.wikipedia.org/wiki/System_Restore Wikipedia: System Restore]
 +
* [http://www.stevebunting.org/udpd4n6/forensics/restorepoints.htm Restore Point Forensics], by [[Steve Bunting]]
 +
* [http://windowsir.blogspot.ch/2007/06/restore-point-analysis.html Restore Point Analysis], by [[Harlan Carvey]],  June 16, 2007
 +
* [http://windowsir.blogspot.ch/2006/10/restore-point-forensics.html Restore Point Forensics], by [[Harlan Carvey]], October 20, 2006
 +
* [http://www.ediscovery.co.nz/wip/srp.html System Restore Point Log Decoding]
 +
 
 +
==== Crash dumps ====
 +
* [http://blogs.technet.com/b/yongrhee/archive/2010/12/29/drwtsn32-on-windows-vista-windows-server-2008-windows-7-windows-server-2008-r2.aspx Technet: Drwtsn32 on Windows Vista/Windows Server 2008/Windows 7/Windows Server 2008 R2], by Yong Rhee, December 29, 2010
 +
* [http://support.microsoft.com/kb/315263 MSDN: How to read the small memory dump file that is created by Windows if a crash occurs], by [[Microsoft]]
 +
 
 +
==== RPC ====
 +
* [http://blogs.technet.com/b/networking/archive/2008/10/24/rpc-to-go-v-1.aspx RPC to Go v.1], by Michael Platts, October 24, 2008
 +
* [http://blogs.technet.com/b/networking/archive/2008/12/04/rpc-to-go-v-2.aspx RPC to Go v.2], by Michael Platts, December 4, 2008
 +
 
 +
==== Windows Scripting Host ====
 +
* [https://www.mandiant.com/blog/ground-windows-scripting-host-wsh/ Going To Ground with The Windows Scripting Host (WSH)], by Devon Kerr, February 19, 2014
 +
 
 +
==== USB ====
 +
* [https://blogs.sans.org/computer-forensics/files/2009/09/USBKEY-Guide.pdf USBKEY Guide], by [[SANS | SANS Institute - Digital Forensics and Incident Response]], September 2009
 +
* [https://blogs.sans.org/computer-forensics/files/2009/09/USB_Drive_Enclosure-Guide.pdf USB Drive Enclosure Guide], by [[SANS | SANS Institute - Digital Forensics and Incident Response]], September 2009
 +
 
 +
==== WMI ====
 +
* [http://www.trendmicro.com/cloud-content/us/pdfs/security-intelligence/white-papers/wp__understanding-wmi-malware.pdf Understanding WMI Malware], by Julius Dizon, Lennard Galang, and Marvin Cruz, July 2010
 +
 
 +
==== Windows Error Reporting (WER) ====
 +
* [http://blogs.technet.com/b/yongrhee/archive/2010/12/29/drwtsn32-on-windows-vista-windows-server-2008-windows-7-windows-server-2008-r2.aspx Drwtsn32 on Windows Vista/Windows Server 2008/Windows 7/Windows Server 2008 R2], by Yong Rhee, December 29, 2010
 +
 
 +
==== Windows Firewall ====
 +
* [http://en.wikipedia.org/wiki/Windows_Firewall Wikipedia: Windows Firewall]
 +
* [http://technet.microsoft.com/en-us/library/cc737845(v=ws.10).aspx#BKMK_log Windows Firewall Tools and Settings]
 +
 
 +
==== Windows 32-bit on Windows 64-bit (WoW64) ====
 +
* [http://en.wikipedia.org/wiki/WoW64 Wikipedia: WoW64]
 +
 
 +
=== Windows XP ===
 +
* [http://support.microsoft.com/kb/q308549 Description of Windows XP System Information (Msinfo32.exe) Tool]
 +
 
 +
[[Category:Operating systems]]

Revision as of 15:21, 25 February 2014

Information icon.png

Please help to improve this article by expanding it.
Further information might be found on the discussion page.

Windows is a widely-spread operating system from Microsoft.

There are 2 main branches of Windows:

  • the DOS-branch: i.e. Windows 95, 98, ME
  • the NT-branch: i.e. Windows NT 4, XP, Vista

Contents

Features

  • Basic and Dynamic Disks, see: [1]

Introduced in Windows NT

Introduced in Windows 2000

Introduced in Windows XP

  • Prefetch
  • System Restore (Restore Points); also present in Windows ME

SP2

  • Windows Firewall

Introduced in Windows Server 2003

  • Volume Shadow Copies

Introduced in Windows Vista

Introduced in Windows Server 2008

Introduced in Windows 7

Introduced in Windows 8

Introduced in Windows Server 2012

Forensics

Partition layout

Default partition layout, first partition starts:

  • at sector 63 in Windows 2000, XP, 2003
  • at sector 2048 in Windows Vista, 2008, 7

Filesystems

Recycle Bin

RECYCLER

Used by Windows 2000, XP. Uses INFO2 file.

See: [2]

$RECYCLE.BIN

Used by Windows Vista. Uses $I and $R files.

See: [3]

Registry

The Windows Registry is a database of keys and values that provides a wealth of information to forensic investigators.

Thumbs.db Files

Thumbs.db files can be found on many Windows systems. They contain thumbnails of images or documents and can be of great value for the investigator.

See also: Vista thumbcache.

Browser Cache

Browser History

The Web Browser History files can contain significant information. The default web browser that comes with Windows is Microsoft Internet Explorer but other common browsers on Windows are Apple Safari, Google Chrome, Mozilla Firefox and Opera.

Search

See Windows Desktop Search

Setup log files (setupapi.log)

Windows Vista introduced several setup log files [4].

Sleep/Hibernation

After (at least) Windows 7 recovers from sleep/hibernation there often is a system time change event (event id 1) in the event logs.

Users

Windows stores a users Security identifiers (SIDs) under the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

The %SID%\ProfileImagePath value should also contain the username.

Windows Error Reporting (WER)

As of Vista, for User Access Control (UAC) elevated applications WER reports can be found in:

C:\ProgramData\Microsoft\Windows\WER\

As of Vista, for non-UAC elevated applications (LUA) WER reports can be found in:

C:\Users\%UserName%\AppData\Local\Microsoft\Windows\WER\

Corresponding registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting

Advanced Format (4KB Sector) Hard Drives

Windows XP does not natively handle drives that use the new standard of 4KB sectors. For information on this, see Advanced Format.

 %SystemRoot%

The actual value of %SystemRoot% is store in the following registry value:

Key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Value: SystemRoot

See Also

External Links

Malware/Rootkits

Program execution

Tracking removable media

Under the hood

MSI

Side-by-side (WinSxS)

Application Experience and Compatibility

System Restore (Restore Points)

Crash dumps

RPC

Windows Scripting Host

USB

WMI

Windows Error Reporting (WER)

Windows Firewall

Windows 32-bit on Windows 64-bit (WoW64)

Windows XP