Skip to content
View dfirvault's full-sized avatar

Block or report dfirvault

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
DFIRVault/README.md

DFIRVault

DFIRVault Logo Version Platform Python License

Unified Digital Forensics & Incident Response Operations Console

Installation β€’ Features β€’ Quick Start β€’ Documentation β€’ Contributing


image

πŸš€ Overview

DFIRVault is a comprehensive, all-in-one console application designed for Digital Forensics and Incident Response (DFIR) professionals. It consolidates multiple essential DFIR tools into a single, unified interface, streamlining your investigative workflow and eliminating the need to juggle between different applications.

Developed by a DFIR practitioner for DFIR practitioners, DFIRVault integrates case management, threat scanning, log analysis, data ingestion, and synchronization capabilities into one powerful platform.

Why DFIRVault?

  • πŸš€ Unified Workflow: No more switching between multiple tools - everything you need in one place
  • πŸ”’ Forensic Soundness: Built with forensic best practices and chain-of-custody considerations
  • πŸ“Š Comprehensive Reporting: Generate detailed HTML, CSV, and JSON reports for documentation
  • ⚑ Performance Optimized: Multi-threaded scanning and efficient data processing
  • πŸ”§ Enterprise Ready: Integrates with Splunk, Elasticsearch, and scheduled task automation

πŸ“‹ Features

1. πŸ“ DFIR Case Manager

  • Create structured case folders with pre-defined evidence directory hierarchy
  • Archive cases with optional AES-256 encryption (7-Zip integration)
  • Case metadata tracking and keyword management
  • One-click folder access and backup location management

2. πŸ” Hayabusa Scanner

  • EVTX log scanning with Sigma rule detection
  • CSV timeline generation with ISO-8601 timestamps
  • HTML report creation for easy sharing and documentation
  • Recursive folder scanning for mounted images and drive collections

3. ⛓️ Chainsaw Scanner

  • Sigma rule-based hunting across EVTX files
  • Event log correlation and pattern detection
  • CSV output for further analysis in Splunk/ELK
  • Custom rule support for organization-specific threats

4. 🦁 Thor Scanner

  • Filesystem IOC scanning across multiple drives
  • MD5 hash extraction for threat intelligence matching
  • Multi-threaded scanning for maximum performance
  • HTML and CSV reports with detailed findings

5. πŸ“Š Splunk Index Manager

  • Create/delete Splunk indexes programmatically
  • Monitor folders and automatically ingest logs
  • Backup/restore indexes with password protection
  • Web interface launcher for quick access

6. πŸ“ˆ CSV β†’ Elasticsearch (CSV2ELK)

  • Bulk CSV upload to Elasticsearch clusters
  • Automatic index creation with date-based naming
  • Timestamp detection and field mapping
  • Chunked uploads with progress tracking

7. πŸ”„ SFTP/FTP Monitor

  • Bidirectional sync between local and remote folders
  • Real-time file monitoring with Watchdog
  • Remote folder browser with GUI selection
  • Comprehensive logging for audit trails

8. πŸ’Ύ VaultMirror

  • Safe scheduled synchronization using Windows Task Scheduler
  • Graceful deletion handling with 30-day recovery window
  • Bi-directional sync option for mirroring
  • Deleted file vault with automatic purging

9. πŸ“š Log Enhancer

  • Enhance your logs before they go into your SIEM or log analysis engine.
  • Enrich with the latest IOCs Query IP2Proxy database, OTX, and AbuseIPDB
  • Find threats faster Enrich your logs before processing, saving time and effort and unnecessary overhead doing post-ingestion lookups.

10. ⚑ Body file to CSV

  • Convert bodyfile to csv in preparation for super timelining and importing into your local log analysis platform (Splunk, Elastic, Opensearch)
  • Additional HTML report with interactive filters for fast timelining triage and analysis

πŸ–₯️ System Requirements

  • Operating System: Windows 10/11, Windows Server 2016+
  • Python: 3.8 or higher (if running from source)
  • Disk Space: 500MB for application + variable for evidence
  • RAM: 4GB minimum, 8GB+ recommended
  • Admin Rights: Required for Thor Scanner and VaultMirror

Optional Dependencies


πŸ“₯ Installation

Option 1: Pre-compiled Executable (Recommended)

  1. Download the latest DFIRVault.exe from the Releases page
  2. Place the executable in your preferred tools directory (e.g., C:\Tools\DFIRVault\)
  3. Double-click to run - no installation required!

Option 2: Run from Source

# Clone the repository
git clone https://github.com/dfirvault/DFIRVault.git
cd DFIRVault

# Install dependencies
pip install -r requirements.txt

# Run the application
python dfirvault.py

🚦 Quick Start Guide

First Launch

  1. Run DFIRVault.exe as Administrator (for full functionality)
  2. The main menu will display all available modules
  3. Configure tool paths when prompted (Hayabusa, Chainsaw, Thor, etc.)
  4. Set your case folder and backup locations in the Case Manager

Typical Workflow

  1. Start a New Case: Use the Case Manager to create a structured case folder
  2. Collect Evidence: Copy disk images, EVTX files, and other evidence to the case folder
  3. Scan for Threats: Run Hayabusa, Chainsaw, and Thor scanners against evidence
  4. Analyze Results: Review HTML/CSV reports generated by the scanners
  5. Ingest Data: Upload CSV reports to Splunk or Elasticsearch for deeper analysis
  6. Archive Case: Password-protect and archive completed cases to cold storage
  7. Sync to Backup: Use VaultMirror to maintain off-site backups

πŸ“š Detailed Module Documentation

DFIR Case Manager

The Case Manager creates a standardized folder structure for each investigation:

[Case Name]/
β”œβ”€β”€ 01 - Evidence/          # Raw evidence, disk images, memory dumps
β”œβ”€β”€ 02 - Case/              # Case notes, interview transcripts, legal docs
β”œβ”€β”€ 03 - Malware/           # Captured malware samples (password protected)
└── 04 - Extracted Evidence/
    β”œβ”€β”€ 01 - Axiom/         # Magnet Axiom exports
    β”œβ”€β”€ 02 - XWays/         # X-Ways Forensics exports
    β”œβ”€β”€ 03 - Thor/          # Thor scanner results
    β”œβ”€β”€ 04 - Hayabusa/      # Hayabusa CSV/HTML reports
    └── 05 - Chainsaw/      # Chainsaw detection results

Pro Tip: Store Keywords.txt in the case root for investigator notes and search terms.

Scanner Configuration

Hayabusa Setup

  1. Download Hayabusa from GitHub
  2. Extract to C:\Tools\Hayabusa\
  3. First scan will prompt for executable location
  4. Configuration saved to Windows Registry: HKCU\Software\DFIRVault\Hayabusa

Chainsaw Setup

  1. Download Chainsaw from GitHub
  2. Extract to C:\Tools\Chainsaw\
  3. Ensure Sigma rules are in the rules/ subdirectory
  4. Configuration saved to Windows Registry

Thor Scanner Setup

  1. Download Thor Lite from Nextron Systems
  2. Place thor64-lite.exe in C:\Tools\Thor\
  3. Run signature updates via the tool menu
  4. Requires Administrator privileges

Splunk Integration

Initial Setup:

  1. Ensure Splunk is installed and running locally
  2. Navigate to Settings > Tokens in Splunk Web
  3. Generate an authentication token
  4. Enter credentials when prompted by DFIRVault

Common Operations:

  • Create indexes with automatic folder monitoring
  • Backup indexes before deletion (with password protection)
  • Restore indexes from backup ZIP files
  • Launch Splunk Web directly from the console

Elasticsearch CSV Upload

Supported Formats:

  • Standard CSV with header row
  • UTF-8 encoding (recommended)
  • Any delimiter (auto-detected)
  • Large files (automatic chunking)

Timestamp Handling:

  • Automatic detection of timestamp columns
  • Support for Unix epoch (seconds/milliseconds)
  • ISO-8601 date string conversion
  • Custom timestamp field selection

VaultMirror Safe Sync

How Safe Delete Works:

  1. Files are NEVER permanently deleted immediately
  2. Deleted files moved to [Drive]:\VaultMirror_Deleted\[CaseName]\
  3. Files retained for 30 days (configurable)
  4. Automatic purging after grace period
  5. Metadata JSON files track deletion history

Sync Modes:

  • One-Way: Source β†’ Destination (files only added/updated)
  • Bi-Directional: Full synchronization with conflict resolution based on timestamps

πŸ”§ Configuration Management

DFIRVault stores all configurations in the Windows Registry under:

HKEY_CURRENT_USER\Software\DFIRVault\

Registry Structure

DFIRVault/
β”œβ”€β”€ CaseManager/
β”‚   β”œβ”€β”€ case_folder (REG_SZ)
β”‚   └── backup_location (REG_SZ)
β”œβ”€β”€ Hayabusa/
β”‚   └── executable_path (REG_SZ)
β”œβ”€β”€ Chainsaw/
β”‚   └── executable_path (REG_SZ)
β”œβ”€β”€ Thor/
β”‚   └── executable_path (REG_SZ)
β”œβ”€β”€ LogEnhancer/
β”‚   └── executable_path (REG_SZ)
β”œβ”€β”€ Splunk/
β”‚   β”œβ”€β”€ splunk_path (REG_SZ)
β”‚   β”œβ”€β”€ username (REG_SZ)
β”‚   └── password (REG_SZ)
└── Elasticsearch/
    β”œβ”€β”€ url (REG_SZ)
    β”œβ”€β”€ username (REG_SZ)
    └── password (REG_SZ)

Backup Registry Settings:

reg export "HKCU\Software\DFIRVault" DFIRVault_backup.reg

Restore Registry Settings:

reg import DFIRVault_backup.reg

πŸ› οΈ Troubleshooting

Common Issues & Solutions

Issue Solution
Hayabusa/Chainsaw not found Download the tool and set path when prompted
Thor Scanner fails Run DFIRVault as Administrator
Splunk connection refused Ensure Splunk is running on port 8089
CSV upload fails Check Elasticsearch cluster health and credentials
VaultMirror task not created Run as Administrator and check Task Scheduler service
Registry access denied Ensure you have write permissions to HKCU

Log Files

  • Case Manager: [CaseFolder]/case_manager.log
  • Hayabusa: [ReportPath]/[case]-log.txt
  • Thor Scanner: [ReportPath]/[case]_thor_log.txt
  • SFTP Monitor: [LocalFolder]/logs/sftp_monitor_*.log
  • VaultMirror: %APPDATA%\VaultMirror\logs\

Performance Optimization

  • Use SSDs for evidence storage when possible
  • Limit concurrent scanners to avoid I/O bottlenecks
  • Use multi-threading option in Thor Scanner for large drives
  • Adjust chunk size in CSV2ELK for network conditions

🀝 Contributing

We welcome contributions from the DFIR community!

Ways to Contribute

  • Report Bugs: Open an issue with detailed reproduction steps
  • Suggest Features: Submit feature requests via GitHub Issues
  • Code Contributions: Fork the repo and submit pull requests
  • Documentation: Help improve this README or add wiki articles
  • Tool Integrations: Add support for new DFIR tools

Development Setup

# Clone your fork
git clone https://github.com/YOUR_USERNAME/DFIRVault.git
cd DFIRVault

# Create virtual environment
python -m venv venv
venv\Scripts\activate  # Windows

# Install dev dependencies
pip install -r requirements-dev.txt

# Run tests
pytest tests/

Coding Standards

  • Follow PEP 8 guidelines
  • Include docstrings for all functions
  • Add type hints where possible
  • Test on Windows 10/11 before submitting

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ™ Acknowledgments

  • Yamato Security for Hayabusa
  • WithSecure Labs for Chainsaw
  • Nextron Systems for Thor Lite
  • Splunk and Elastic communities
  • All DFIR practitioners who provided feedback and testing

πŸ“ž Contact & Support


⭐ Star History

If you find DFIRVault useful, please consider starring the repository on GitHub!

Star History Chart


Built with ❀️ for the DFIR community

Pinned Loading

  1. Thor-scanner-menu Thor-scanner-menu Public

    Menu for Thor scanner lite

    Python 20

  2. ForensIQ ForensIQ Public

    A DFIR Incident Response AI bot using local Ollama LLM to derrive automated findings from logs

    Python 16

  3. FivePM FivePM Public

    FivePM is a lightweight DFIR triage and log analysis tool built for those end-of-shift surprises. It hunts through logs or text files to extract indicators of compromise (IOCs) like IPs, domains, a…

    Python 5

  4. DFIRCopilot DFIRCopilot Public

    A Splunk app that brings local, offline LLM-powered analysis directly to your DFIR and threat hunting workflows. DFIR Copilot uses Ollama to run models like Mistral or Llama3 locally, enabling you …

    Python 2

  5. DFIRCaseManager DFIRCaseManager Public

    Simple case manager for DFIR cases

    Python

  6. Splunk-DFIR-Dashboards Splunk-DFIR-Dashboards Public

    A collection of custom-built dashboards for threat hunting.

    6