Installation Guide
This guide covers the complete installation process for Chronos-DFIR, from system requirements to running your first analysis.System Requirements
Python Version
Python 3.12 or higher (3.12.0 recommended)Verify your version:
Memory
Minimum: 8GB RAMRecommended: 16GB+ for large datasets (1M+ events)
Storage
Application: ~500MBWorking Space: 10GB+ for temporary processing files
Operating System
Supported:
- macOS 12+ (Apple Silicon optimized)
- Windows 10/11
- Linux (Ubuntu 20.04+, Debian 11+)
Installation Methods
Method 1: Standard Installation (Recommended)
Create a Virtual Environment
Using a virtual environment isolates Chronos-DFIR dependencies from your system Python packages, preventing conflicts.
Install Dependencies
Install all required Python packages from This installs 49 packages including:
requirements.txt:| Package | Version | Purpose |
|---|---|---|
fastapi | 0.128.0 | Web framework and REST API |
uvicorn | 0.40.0 | ASGI server for FastAPI |
polars | 1.37.1 | Vectorized data processing |
pyarrow | 23.0.0 | Columnar data format |
evtx | 0.11.0 | Windows Event Log parser |
xlsxwriter | 3.2.9 | Excel export with format control |
PyYAML | 6.0.2 | Sigma rule parsing |
yara-python | 4.5.0+ | Malware signature matching |
weasyprint | 68.0+ | Server-side PDF generation |
httpx | 0.27.0+ | Threat intelligence API client |
duckdb | 1.1.0+ | Case management database |
Installation may take 3-5 minutes depending on your internet speed. Some packages (like
weasyprint) have native dependencies that may require additional system libraries.Platform-Specific Dependencies
macOS (Homebrew):Ubuntu/Debian:Windows:WeasyPrint requires GTK3 runtime. Download and install from:Alternatively, skip PDF generation and use the browser’s print function instead.
Verify Installation
Test that all core dependencies loaded successfully:Expected output:If you encounter import errors, see the Troubleshooting section.
Method 2: Docker Installation (Beta)
Environment Configuration
Copy Environment Template
Create your local environment file from the template:The
.env.example file contains:Configure Threat Intelligence (Optional)
Chronos-DFIR works 100% offline by default. Threat intelligence enrichment is optional but enhances analysis:Edit
Free Tier Providers
- AbuseIPDB: 1,000 IP checks/day
- VirusTotal: 4 requests/min, 500/day
- URLScan.io: 100 scans/day
- IP-API: Built-in, no key required
Premium Providers
- HaveIBeenPwned: $3.50/month
- VirusTotal Premium: 1,000 req/min
- AbuseIPDB Premium: 60,000/day
.env and add your API keys:Keys are loaded via
python-dotenv at startup. Restart the server after updating .env.Create Working Directories
Chronos-DFIR auto-creates these on first run, but you can create them manually:
| Directory | Purpose | Cleanup |
|---|---|---|
chronos_uploads/ | Uploaded forensic artifacts | Auto-cleared on startup |
chronos_output/ | Parsed CSV files and exports | Auto-cleared on startup |
static/ | JavaScript, CSS, frontend assets | Persistent |
templates/ | Jinja2 HTML templates | Persistent |
rules/sigma/ | YAML detection rules (86 files) | Persistent |
rules/yara/ | Malware signatures (7 files) | Persistent |
Running the Server
Standard Launch
Start the FastAPI server with Uvicorn:Expected output:
The server binds to all network interfaces (
0.0.0.0). Access from other machines on your network via your IP address.Development Mode (Auto-Reload)
Enable auto-restart when code changes:This watches Python files in the current directory and reloads the server automatically. Useful for development and testing.
Production Deployment
For production use, increase worker count and disable reload:Worker count recommendations:
- CPU cores: 2-4 → 2 workers
- CPU cores: 8+ → 4 workers
- CPU cores: 16+ → 6-8 workers
Verification
Check Web Interface
Open your browser and navigate to:You should see the Chronos-DFIR dark-mode interface with:
- Sidebar with drag-and-drop upload area
- Main grid area (empty until first upload)
- Histogram chart area (hidden until data loaded)
- Toolbar with Export, Filter, and Context buttons
Verify Detection Engines
Check the server logs for Sigma rule loading:Test YARA engine:Expected:
YARA version: 4.5.0 or higherTest File Upload
Upload a small test file to verify the pipeline:Drag
test.csv into the web interface. You should see:Troubleshooting
Common Issues
Performance Tuning
For large datasets (1M+ events):Logs and Debugging
Enable debug logging:Upgrading
Clear Cache
Hard refresh the browser:
- Windows/Linux: Ctrl+Shift+R
- macOS: Cmd+Shift+R
Uninstallation
Next Steps
Quick Start Guide
Upload your first artifact and generate a forensic timeline
Detection Rules
Customize Sigma rules, YARA signatures, and detection settings
Having installation issues? Check the GitHub Issues or consult the troubleshooting guide.