Convert Figma logo to code with AI

Invoke-IR logoPowerForensics

PowerForensics provides an all in one platform for live disk forensic analysis

1,382
275
1,382
63

Top Related Projects

4,747

GRR Rapid Response: remote live forensics for incident response

1,696

Super timeline all the things

The Sleuth Kit® (TSK) is a library and collection of command line digital forensics tools that allow you to investigate volume and file system data. The library can be incorporated into larger digital forensics tools and the command line tools can be directly used to find evidence.

An advanced memory forensics framework

Quick Overview

PowerForensics is an open-source PowerShell digital forensics framework. It provides a powerful set of cmdlets for live disk forensic analysis on Windows systems, allowing investigators to collect and analyze forensic artifacts directly from the command line or through scripts.

Pros

  • Lightweight and easy to use, requiring no installation beyond PowerShell
  • Provides direct access to NTFS file system structures and Windows artifacts
  • Can be run live on a system without affecting its state
  • Extensible through PowerShell scripting

Cons

  • Limited to Windows systems and NTFS file systems
  • Requires administrative privileges to access raw disk data
  • May not be as comprehensive as some commercial forensics tools
  • Development appears to have slowed down in recent years

Code Examples

  1. List all files in the Master File Table (MFT):
Get-ForensicFileRecord | Select-Object FullName, CreationTime, LastAccessTime, LastWriteTime
  1. Extract the contents of a specific file:
Get-ForensicFileContent -Path "C:\Users\User\Desktop\document.txt"
  1. Analyze the Windows Registry:
Get-ForensicRegistry -HivePath "C:\Windows\System32\config\SYSTEM" | 
    Select-Object -ExpandProperty Root | 
    Get-ForensicRegistryKey
  1. Retrieve information about deleted files:
Get-ForensicFileRecord | Where-Object { $_.IsDeleted -eq $true }

Getting Started

To get started with PowerForensics:

  1. Open PowerShell as an administrator
  2. Install PowerForensics from the PowerShell Gallery:
Install-Module -Name PowerForensics
  1. Import the module:
Import-Module PowerForensics
  1. Start using PowerForensics cmdlets:
Get-Command -Module PowerForensics

Now you can use any of the PowerForensics cmdlets for your forensic analysis tasks.

Competitor Comparisons

4,747

GRR Rapid Response: remote live forensics for incident response

Pros of GRR

  • Cross-platform support (Windows, macOS, Linux)
  • Scalable for large enterprise environments
  • Extensive API and integration capabilities

Cons of GRR

  • More complex setup and maintenance
  • Steeper learning curve for new users
  • Requires more resources to run effectively

Code Comparison

PowerForensics (PowerShell):

Get-ForensicFileRecord -Path "C:\Windows\System32\cmd.exe"

GRR (Python):

flow = client.CreateFlow(
    client_id=client_id,
    flow_name="FileFinder",
    args={"paths": ["C:\\Windows\\System32\\cmd.exe"]}
)

Key Differences

PowerForensics is a PowerShell-based tool focused on Windows forensics, offering simplicity and ease of use for Windows environments. GRR, on the other hand, is a more comprehensive, cross-platform solution designed for large-scale deployments and remote live forensics.

PowerForensics excels in quick, targeted Windows analysis, while GRR provides a broader range of capabilities for enterprise-wide incident response and remote investigations. The choice between the two depends on the specific needs of the organization, scale of deployment, and the target operating systems.

1,696

Super timeline all the things

Pros of plaso

  • Multi-platform support (Windows, macOS, Linux)
  • Extensive file format support for parsing various log types
  • Active development and community support

Cons of plaso

  • Steeper learning curve due to complexity
  • Requires Python environment setup
  • Can be resource-intensive for large datasets

Code Comparison

plaso:

from plaso.cli import log2timeline_tool
tool = log2timeline_tool.Log2TimelineTool()
tool.ParseArguments()
tool.RunTool()

PowerForensics:

Import-Module PowerForensics
Get-ForensicFileRecord -Path C:\
Get-ForensicTimeline -Path C:\

Key Differences

  • PowerForensics is PowerShell-based, focusing on Windows forensics
  • plaso is Python-based, offering cross-platform support
  • PowerForensics has a simpler syntax, while plaso provides more extensive parsing options
  • plaso generates a comprehensive timeline, whereas PowerForensics offers targeted artifact collection

Both tools are valuable for digital forensics, with PowerForensics excelling in Windows environments and plaso providing broader platform and artifact support. The choice between them depends on the specific investigation requirements and the examiner's familiarity with PowerShell or Python.

The Sleuth Kit® (TSK) is a library and collection of command line digital forensics tools that allow you to investigate volume and file system data. The library can be incorporated into larger digital forensics tools and the command line tools can be directly used to find evidence.

Pros of sleuthkit

  • More comprehensive and mature toolkit for digital forensics
  • Supports a wider range of file systems and disk image formats
  • Has a larger community and more extensive documentation

Cons of sleuthkit

  • Steeper learning curve due to its complexity
  • Primarily designed for Unix-like systems, less native Windows support
  • Requires more setup and dependencies compared to PowerForensics

Code Comparison

sleuthkit (C):

TSK_IMG_INFO *img = tsk_img_open_sing("image.dd", TSK_IMG_TYPE_RAW, 0);
TSK_FS_INFO *fs = tsk_fs_open_img(img, 0, TSK_FS_TYPE_DETECT);
TSK_FS_FILE *file = tsk_fs_file_open_meta(fs, NULL, inode);

PowerForensics (PowerShell):

$volume = Get-ForensicVolume -Path \\.\C:
$file = Get-ForensicFileRecord -VolumeName $volume.Name -FileRecordNumber 5

Both toolkits provide powerful forensic capabilities, but sleuthkit offers a more comprehensive set of tools for various file systems and disk images. PowerForensics, being PowerShell-based, is more accessible for Windows administrators and integrates well with existing Windows forensic workflows. sleuthkit is better suited for in-depth forensic analysis across multiple platforms, while PowerForensics excels in quick Windows-specific investigations.

An advanced memory forensics framework

Pros of Volatility

  • More extensive plugin ecosystem and community support
  • Supports a wider range of operating systems and memory dump formats
  • More mature project with a longer development history

Cons of Volatility

  • Steeper learning curve for beginners
  • Requires Python environment setup
  • Can be slower for large memory dumps compared to PowerForensics

Code Comparison

PowerForensics (PowerShell):

Get-ForensicFileRecord -Path C:\Windows\System32\cmd.exe

Volatility (Python):

python vol.py -f memory.dump --profile=Win10x64_18362 filescan | grep cmd.exe

Key Differences

  • PowerForensics is designed specifically for Windows systems and integrates seamlessly with PowerShell
  • Volatility offers more advanced features and cross-platform support
  • PowerForensics focuses on live system analysis, while Volatility primarily works with memory dumps
  • Volatility has a larger user base and more extensive documentation

Both tools are valuable for digital forensics, with PowerForensics being more accessible for Windows-focused investigations and Volatility offering broader capabilities for memory analysis across multiple platforms.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

PowerForensics - PowerShell Digital Forensics

Developed by @jaredcatkinson

Build status docs status waffle ready waffle in progress

Overview

The purpose of PowerForensics is to provide an all inclusive framework for hard drive forensic analysis. PowerForensics currently supports NTFS and FAT file systems, and work has begun on Extended File System and HFS+ support.

All PowerForensics documentation has been moved to Read The Docs.

Detailed instructions for installing PowerForensics can be found here.

Public API

PowerForensics is built on a C# Class Library (Assembly) that provides a public API for forensic tasks. The public API provides a modular framework for adding to the capabilities exposed by the PowerForensics module. All of this module's cmdlets are built on this public API and tasks can easily be expanded upon to create new cmdlets. API documentation can be found here.