A comprehensive suite for parsing Windows artifacts and Memory Analysis.
Automatically identifies file types based on signatures and filenames - just point it at your evidence!
Extract forensically significant data from Windows Registry hives:
Complete Windows Prefetch file parser with broad compatibility:
Parse Windows shortcut files to uncover:
Parse Windows Event Logs from C:\Windows\System32\winevt\Logs:
NEW! Volatility 3 integration for memory dump analysis:
# Clone the repository
git clone https://github.com/Prof-GP/forensic-toolbox.git
cd forensic-toolbox
# Create virtual environment and install
make install
# Activate virtual environment
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
# Create virtual environment
python3 -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
# Install package
pip install -e .
# Install with all optional features (including compressed prefetch support)
make install-all
# Or manually
pip install -e ".[all]"
# Automatically detect and parse any supported file
forensic-toolbox evidence.lnk
forensic-toolbox CALC.EXE-12345.pf
forensic-toolbox SOFTWARE
# Specify registry type explicitly
forensic-toolbox REGISTRY_FILE --type SOFTWARE
# Export results to file
forensic-toolbox SOFTWARE --output results.json
forensic-toolbox NTUSER.DAT --output user_activity.csv
forensic-toolbox file1.lnk file2.pf NTUSER.DAT
# Parse specific event IDs
forensic-toolbox Security.evtx --evtx-event 4688
# Parse entire logs directory
forensic-toolbox C:\Logs
# Auto-detect OS and run all forensic plugins
forensic-toolbox memory.dmp
# Priority plugins only (RECOMMENDED for fast analysis)
forensic-toolbox memory.vmem --vol-priority-only
# Specific plugins
forensic-toolbox memory.raw --vol-plugins windows.pslist.PsList windows.netscan.NetScan
# Specific categories (FAST - excludes scanning plugins)
forensic-toolbox memory.dmp --vol-categories processes network malware_indicators
# Include scanning plugins (SLOW - can take 30+ minutes)
forensic-toolbox memory.dmp --vol-categories processes processes_scan malware_scan
# Different output formats
forensic-toolbox memory.dmp --vol-format json # JSON format
forensic-toolbox memory.dmp --vol-format csv # CSV format
forensic-toolbox memory.dmp --vol-format markdown # Markdown format
Use ftb as shorthand for forensic-toolbox:
ftb SOFTWARE --output results.json
from Toolbox.toolbox_registry import ToolboxRegistry
from Toolbox.toolbox_prefetch import ToolboxPrefetch
from Toolbox.toolbox_lnk import ToolboxLnk
from Toolbox.toolbox_volatility import ToolboxVolatility
# Parse registry hive
reg = ToolboxRegistry('SOFTWARE', 'SOFTWARE')
results = reg.valuable_keys()
reg.print_results(results)
# Parse prefetch file
with ToolboxPrefetch('CALC.EXE-12345.pf') as parser:
if parser.parse():
parser.print_summary()
# Parse LNK file
lnk = ToolboxLnk('shortcut.lnk')
# Analyze memory dump
vol = ToolboxVolatility('memory.dmp')
vol.detect_os()
vol.run_forensic_analysis()
vol.print_summary()
| Type | Files | Key Information Extracted |
|---|---|---|
| Registry Hives | SOFTWARE, SYSTEM, SAM, NTUSER.DAT, SECURITY, USRCLASS.DAT | Installed apps, autoruns, network profiles, USB devices, user activity, security policies |
| Prefetch Files | .pf (XP through Win 11) | Execution timestamps, run counts, loaded DLLs, accessed directories |
| Windows Shortcuts | .lnk | Target paths, timestamps, volume info, network shares, MAC addresses |
| Event Logs | .evtx | System events, user activity, PowerShell commands, security events |
| Memory Dumps | .vmem, .raw, .mem, .dmp, .lime, .dump, .img, .bin, .dd | Running processes, network connections, loaded DLLs, registry data, malware indicators |
Recommended approach for VM analysis:
| Category | Speed | Description |
|---|---|---|
| processes | โก FAST | Process listings, trees, command lines, DLLs |
| processes_scan | ๐ SLOW | Hidden process scanning (30+ minutes) |
| network | โก FAST | Network connections, sockets, netstat |
| registry | โก FAST | Registry hives, UserAssist, registry keys |
| files | ๐ SLOW | File object scanning |
| malware_indicators | โก FAST | Code injection, kernel callbacks, SSDT hooks |
| malware_scan | ๐ SLOW | VAD analysis, driver scanning (30+ minutes) |
| system_info | โก FAST | OS information, services, drivers |
--vol-priority-only for quick triage (1-5 minutes)--vol-categories processes network malware_indicators for fast comprehensive analysisprocesses_scan, malware_scan, and files unless deep scanning is neededmemory_volatility_output/
โโโ analysis_summary.json
โโโ windows_info_Info.txt
โโโ windows_pslist_PsList.txt
โโโ windows_pstree_PsTree.txt
โโโ windows_netscan_NetScan.txt
โโโ windows_cmdline_CmdLine.txt
โโโ ...
| Use Case | Description |
|---|---|
| Digital Forensics | Extract evidence from Windows, Linux, and Mac systems |
| Incident Response | Analyze program execution, user activity, and live memory |
| Malware Analysis | Identify persistence mechanisms, code injection, and rootkits |
| System Auditing | Review installed software and system configuration |
| Timeline Analysis | Build execution timelines from multiple artifacts |
| Memory Forensics | Analyze memory dumps for running processes, network connections, and hidden malware |
forensic-toolbox SOFTWARE --output software_analysis.json
Output includes:
forensic-toolbox CHROME.EXE-12345ABC.pf
Output includes:
forensic-toolbox "Recent Document.lnk"
Output includes:
forensic-toolbox Security.evtx
Output includes:
forensic-toolbox memory.dmp
Output includes:
make test
make format
make lint
make check
forensic-toolbox/
โโโ Toolbox/
โ โโโ __init__.py
โ โโโ toolbox_registry.py # Registry hive parser
โ โโโ toolbox_prefetch.py # Prefetch file parser
โ โโโ toolbox_lnk.py # LNK file parser
โ โโโ toolbox_evtx.py # EVTX parser
โ โโโ toolbox_volatility.py # Memory analysis (Volatility 3)
โโโ main.py # Main entry point
โโโ registry_mapping.py # Forensic registry keys configuration
โโโ evtx_mapping.py # Forensic event ID configuration
โโโ volatility_mapping.py # Volatility plugins configuration
โโโ pyproject.toml # Package configuration
โโโ requirements.txt # Dependencies
โโโ Makefile # Build automation
โโโ README.md # This file
vol.exe or vol3 is in your system PATHpip install volatility3 (then use python -m volatility3)MIT License - See LICENSE file for details
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)Prof-GP
For issues, questions, or contributions, please visit:
๐ https://github.com/Prof-GP/forensic-toolbox/issues
Built with โค๏ธ for the digital forensics community