Difference between pages "Libewf" and "Plaso"

From ForensicsWiki
(Difference between pages)
Jump to: navigation, search
 
(File formats)
 
Line 1: Line 1:
 
{{Infobox_Software |
 
{{Infobox_Software |
   name = libewf |
+
   name = plaso |
   maintainer = [[Joachim Metz]] |
+
   maintainer = [[Kristinn Gudjonsson]], [[Joachim Metz]] |
   os = [[Linux]], [[FreeBSD]], [[NetBSD]], [[OpenBSD]], [[Mac OS X]], [[Windows]] |
+
   os = [[Linux]], [[Mac OS X]], [[Windows]] |
   genre = {{Disk imaging}} |
+
   genre = {{Analysis}} |
   license = {{LGPL}} |
+
   license = {{APL}} |
   website = [http://code.google.com/p/libewf/ code.google.com/p/libewf/] |
+
   website = [https://code.google.com/p/plaso/ code.google.com/p/plaso/] |
 
}}
 
}}
  
'''Libewf''' is a library to access the [[Encase image file format|Expert Witness Compression Format (EWF)]].
+
Plaso (plaso langar að safna öllu) is the Python based back-end engine used by tools such as log2timeline for automatic creation of a super timelines. The goal of log2timeline (and thus plaso) is to provide a single tool that can parse various log files and forensic artifacts from computers and related systems, such as network equipment to produce a single correlated timeline. This timeline can then be easily analysed by forensic investigators/analysts, speeding up investigations by correlating the vast amount of information found on an average computer system. Plaso is intended to be applied for creating super timelines but also supports creating [http://blog.kiddaland.net/2013/02/targeted-timelines-part-i.html targeted timelines].
  
== Features ==
+
The Plaso project site also provides [[4n6time]], formerly "l2t_Review", which is a cross-platform forensic tool for timeline creation and review by [[David Nides]].
Read or write supported EWF formats:
+
* [[SMART]] .s01 (EWF-S01)
+
* [[EnCase]] .E01 (EWF-E01) and .Ex01 (EWF2-Ex01)
+
  
Read-only supported EWF formats:
+
== Supported Formats ==
* Logical Evidence File (LEF) .L01 (EWF-L01) and .Lx01 (EWF2-Lx01)
+
The information below is based of version 1.1.0
  
Other features:
+
=== Storage Media Image File Formats ===
* empty-block compression
+
Storage Medis Image File Format support is provided by [[dfvfs]].
* read/write access using delta (or shadow) files
+
* write resume
+
  
== Tools ==  
+
=== Volume System Formats ===
The '''libewf''' package contains the following tools:
+
Volume System Format support is provided by [[dfvfs]].
* '''ewfacquire''', which writes storage media data from devices and files to EWF files.
+
* '''ewfacquirestream''', which writes data from stdin to EWF files.
+
* '''ewfdebug'''; experimental tool does nothing at the moment.
+
* '''ewfexport''', which exports storage media data in EWF files to (split) RAW format or a specific version of EWF files.
+
* '''ewfinfo''', which shows the metadata in EWF files.
+
* '''ewfmount''', which FUSE mounts EWF files.
+
* '''ewfrecover'''; special variant of ewfexport to create a new set of EWF files from a corrupt set.
+
* '''ewfverify''', which verifies the storage media data in EWF files.
+
  
The '''libewf''' package also contains the following bindings:
+
=== File System Formats ===
* '''ewf.net''', bindings for .Net
+
File System Format support is provided by [[dfvfs]].
* '''pyewf''', bindings for Python contributed by [[David Collett]] in 2008
+
  
=== Contributions ===
+
=== File formats ===
Tools that have been contributed to the project are provided as separate tools on the sourceforge libewf project site. These are:
+
* Apple System Log (ASL)
* '''mount_ewf.py''', which allows the storage media data in a EWF files to be mounted, contributed by [[David Loveall]] in 2007.
+
* Basic Security Module (BSM)
* '''libewf-java''', Java (JNA) bindings were contributed by [[Bradley Schatz]] in 2009.
+
* Bencode files
* '''delphi imdisk proxy''', Borland Delphi imdisk proxy, as an alternative to mount_ewf.py for Windows, contributed by [[Brendan Berney]] in 2010.
+
* [[Google Chrome|Chrome cache files]]
* '''jlibewf''', native Java EWF reader contributed by [[Bruce Allen]] in 2010.
+
* CUPS IPP
* '''libewfcs''', native C# EWF reader contributed by [[Bruce Allen]] in 2011.
+
* [[Extensible Storage Engine (ESE) Database File (EDB) format]] using [[libesedb]]
* '''ewfaquirestream-mt''', C++ 11 multi-threaded version of ewfacquirestream contributed by Bernhard Zach in 2013.
+
* Firefox Cache
 +
* [[Java|Java IDX]]
 +
* MacOS-X Application firewall
 +
* MacOS-X Keychain
 +
* MacOS-X Securityd
 +
* MacOS-X Wifi
 +
* ([[SleuthKit]]) mactime logs
 +
* McAfee Anti-Virus Logs
 +
* Microsoft [[Internet Explorer History File Format]] (also known as MSIE 4 - 9 Cache Files or index.dat) using [[libmsiecf]]
 +
* [[OLE Compound File]] using [[libolecf]]
 +
* [[Opera|Opera Browser history]]
 +
* OpenXML
 +
* Pcap files
 +
* Popularity Contest log
 +
* [[Property list (plist)|Property list (plist) format]] using [[binplist]]
 +
* SELinux audit logs
 +
* SkyDrive log and error log files
 +
* [[SQLite database format]] using [[SQLite]]
 +
* Symantec AV Corporate Edition and Endpoint Protection log
 +
* Syslog
 +
* UTMP
 +
* UTMPX
 +
* [[Windows Event Log (EVT)]] using [[libevt]]
 +
* Windows Firewall
 +
* Windows Job files (also known as "at jobs")
 +
* [[Windows Prefetch File Format|Windows Prefetch File format]]
 +
* [[Windows#Recycle_Bin|Windows Recycle bin]] (INFO2 and $I/$R)
 +
* [[Windows NT Registry File (REGF)]] using [[libregf]]
 +
* [[LNK|Windows Shortcut File (LNK) format]] using [[liblnk]]
 +
* [[Windows XML Event Log (EVTX)]] using [[libevtx]]
 +
* Xchat and Xchat scrollback files
  
A menu based interface for ewfacquirestream called pyEWF, contributed by [[Dennis Schreiber]], was originally also available on the uitwisselplatform project site. However this is currently no longer maintained and was not moved to the sourceforge project size. The uitwisselplatform no longer exists. The name pyewf was reused for the libewf Python bindings created by [[David Collett]] which is now included in the libewf package.
+
=== Bencode file formats ===
 +
* Transmission
 +
* uTorrent
  
=== Examples ===  
+
=== ESE database file formats ===
 +
* Internet Explorer WebCache format
  
Imaging a device on a Unix-based system:
+
=== OLE Compound File formats ===
<pre>
+
* Document summary information
ewfacquire /dev/sda
+
* Summary information (top-level only)
</pre>
+
  
Imaging a device on a Windows system:
+
=== Property list (plist) formats ===
<pre>
+
* Airport
ewfacquire \\.\PhysicalDrive0
+
* Apple Account
</pre>
+
* Bluetooth
 +
* Install History
 +
* iPod/iPhone
 +
* Mac User
 +
* Safari history
 +
* Software Update
 +
* Spotlight
 +
* Spotlight Volume Information
 +
* Timemachine
  
Converting a RAW into an EWF image
+
=== SQLite database file formats ===
<pre>
+
* Android call logs
ewfacquire myfile.raw
+
* Android SMS
</pre>
+
* Chrome cookies
 +
* [[Google Chrome|Chrome browsing and downloads history]]
 +
* [[Mozilla Firefox|Firefox browsing and downloads history]]
 +
* Google Drive
 +
* Launch services quarantine events
 +
* MacKeeper cache
 +
* Mac OS X document versions
 +
* Skype text conversations
 +
* [[Zeitgeist|Zeitgeist activity database]]
  
or:
+
=== [[Windows Registry]] formats ===
<pre>
+
* [[Windows Application Compatibility|AppCompatCache]]
ewfacquire -c best -m fixed -t myfile -S 1T -u [-q] myfile.raw
+
* CCleaner
</pre>
+
* Less Frequently Used
 +
* MountPoints2
 +
* MRUList and MRUListEx (no shell item support)
 +
* [[Internet Explorer|MSIE Zones]]
 +
* Office MRU
 +
* Outlook Search
 +
* Run Keys
 +
* Services
 +
* Terminal Server MRU
 +
* Typed URLS
 +
* USBStor
 +
* UserAssist
 +
* WinRar
 +
* Windows version information
  
or
+
== History ==
 +
Plaso is a Python-based rewrite of the Perl-based [[log2timeline]] initially created by [[Kristinn Gudjonsson]]. Plaso builds upon the [[SleuthKit]], [[libyal]], [[dfvfs]] and various other projects.
  
<pre>
+
== See Also ==
cat split.raw.??? | ewfacquirestream
+
* [[dfvfs]]
cat myfile.??? | ewfacquirestream  -c best -m fixed -t myfile -S 1T
+
* [[log2timeline]]
 
+
</pre>
+
 
+
Converting an optical disc (split) RAW into an EWF image (libewf 20110109 or later)
+
<pre>
+
ewfacquire -T optical.cue optical.iso
+
</pre>
+
 
+
Converting an EWF into another EWF format or a (split) RAW image
+
<pre>
+
ewfexport image.E01
+
</pre>
+
 
+
Exporting files from a logical image (L01)
+
<pre>
+
ewfexport image.L01
+
</pre>
+
 
+
FUSE mounting an EWF image (libewf 20110828 or later)
+
<pre>
+
ewfmount image.E01 mount_point
+
</pre>
+
 
+
FUSE mounting a logical image (L01) (libewf 20111016 or later)
+
<pre>
+
ewfmount -f files image.L01 mount_point
+
</pre>
+
 
+
Verify an single image with results to the screen
+
<pre>
+
ewfverify image.E01
+
</pre>
+
 
+
From a linux shell, verify a group of images in subdirectories of the current directory creating a simple log file per image.
+
<pre>
+
find . -name \*.E01 -printf '%f %p\n' | xargs printf "ewfverify -l \$(basename -s .E01 %s).ewfverify.out  %s\n" | sh
+
</pre>
+
 
+
or
+
 
+
<pre>
+
find . -name '*.E01' | while read F
+
do
+
  echo ewfverify -l "$(basename -s .E01 $F).ewfverify.out" "$F"
+
done
+
</pre>
+
 
+
== History ==  
+
 
+
Libewf was created by [[Joachim Metz]] in 2006, while working for [http://en.hoffmannbv.nl/ Hoffmann Investigations].
+
 
+
Libewf is a rewrite of earlier work on the EnCase 4 file format by [[Michael Cohen]] part of [[PyFlag]] and the [[:File:ASR Data's Expert Witness Compression Format.pdf|Expert Witness Compression Format]] Specification by [[Andrew Rosen]]. It has been updated to read and write EnCase version 1 to 7 .E01 files, EnCase 5 to 7 .L01 files, EnCase 7 .Ex01 and .Lx01 files and SMART .s01 files. Libewf has initiated an Extended EWF (EWF-X) specifications to bypass limitations on the format imposed by the EnCase .E01 format.
+
 
+
In 2007 [[David Loveall]] contributed mount_ewf.py to the libewf project. This application allows a [[fuse]] based mount of the storage media data in the EWF files to be mounted. Due to repeated issues with Python and the fuse Python-bindings on [[Mac OS X]] part of the functionality of these scripts has been rewritten into '''ewfmount'''.
+
 
+
As of version 20120715 support for EWF version 2 (.Ex01 and .Lx01) was added.
+
  
 
== External Links ==
 
== External Links ==
 
+
* [https://code.google.com/p/plaso/ Project site]
* [https://code.google.com/p/libewf/ Project site]
+
* [https://sites.google.com/a/kiddaland.net/plaso/home Project documentation]
* [https://code.google.com/p/libewf/wiki/Building Building libewf and tools from source]
+
* [http://blog.kiddaland.net/ Project blog]
* [https://code.google.com/p/libewf/wiki/Mounting Mounting a set of EWF file(s)]
+
* [https://sites.google.com/a/kiddaland.net/plaso/usage/4n6time 4n6time]
* [http://libewf.sourceforge.net Old project site]
+

Revision as of 01:52, 4 June 2014

plaso
Maintainer: Kristinn Gudjonsson, Joachim Metz
OS: Linux, Mac OS X, Windows
Genre: Analysis
License: APL
Website: code.google.com/p/plaso/

Plaso (plaso langar að safna öllu) is the Python based back-end engine used by tools such as log2timeline for automatic creation of a super timelines. The goal of log2timeline (and thus plaso) is to provide a single tool that can parse various log files and forensic artifacts from computers and related systems, such as network equipment to produce a single correlated timeline. This timeline can then be easily analysed by forensic investigators/analysts, speeding up investigations by correlating the vast amount of information found on an average computer system. Plaso is intended to be applied for creating super timelines but also supports creating targeted timelines.

The Plaso project site also provides 4n6time, formerly "l2t_Review", which is a cross-platform forensic tool for timeline creation and review by David Nides.

Supported Formats

The information below is based of version 1.1.0

Storage Media Image File Formats

Storage Medis Image File Format support is provided by dfvfs.

Volume System Formats

Volume System Format support is provided by dfvfs.

File System Formats

File System Format support is provided by dfvfs.

File formats

Bencode file formats

  • Transmission
  • uTorrent

ESE database file formats

  • Internet Explorer WebCache format

OLE Compound File formats

  • Document summary information
  • Summary information (top-level only)

Property list (plist) formats

  • Airport
  • Apple Account
  • Bluetooth
  • Install History
  • iPod/iPhone
  • Mac User
  • Safari history
  • Software Update
  • Spotlight
  • Spotlight Volume Information
  • Timemachine

SQLite database file formats

Windows Registry formats

  • AppCompatCache
  • CCleaner
  • Less Frequently Used
  • MountPoints2
  • MRUList and MRUListEx (no shell item support)
  • MSIE Zones
  • Office MRU
  • Outlook Search
  • Run Keys
  • Services
  • Terminal Server MRU
  • Typed URLS
  • USBStor
  • UserAssist
  • WinRar
  • Windows version information

History

Plaso is a Python-based rewrite of the Perl-based log2timeline initially created by Kristinn Gudjonsson. Plaso builds upon the SleuthKit, libyal, dfvfs and various other projects.

See Also

External Links