kalink0/crush-forensics
Open-source desktop workbench for digital forensic analysis. Inspect ZIP/TAR acquisitions and parse ABX, SQLite, SEGB, PLIST, hex, JSON, XML, and media files — all in one GUI.
crush-forensics
Crush — Digital Forensic Analysis Workbench
Features
Open and navigate in ZIP and TAR archives (eg. for mobile phone acquisitions)
Open single files and folder.
When navigating and open file you can use the following feature atm:
- ABX Viewer
- Hex Viewer
- SQLITE Viewer
- SEGB v1/v2 Decoder and Viewer
- Media file (Audio, Video Image) Viewer
- JSON Viewer
- XML-Viewer
- PLIST and BPLIST Viewer
Install and Run
From source (recommended for development)
- Create a virtual environment
python -m venv .venv
source .venv/bin/activate- Install dependencies
python -m pip install --upgrade pip
python -m pip install -e .- Run Crush
crushAlternative run command
python -m crushIf you see missing Qt or media errors, install the system dependencies below.
System Dependencies
Some Python packages require OS-level libraries on fresh machines.
Base GUI/Qt runtime (PySide6)
These are required for the Qt GUI to run correctly on Linux.
- Debian/Ubuntu:
sudo apt-get install libgl1 libegl1 libxcb-xinerama0 libxkbcommon-x11-0 - Fedora:
sudo dnf install mesa-libGL mesa-libEGL libxcb libxkbcommon-x11 - Arch:
sudo pacman -S mesa libglvnd libxcb libxkbcommon-x11 - Windows: no additional packages required; if the app fails to start, install the Microsoft Visual C++ Redistributable 2015-2022 (x64)
- macOS: no additional packages required (bundled with the OS)
libmagic (for python-magic)
python-magic depends on libmagic being present on the system.
- Debian/Ubuntu:
sudo apt-get install libmagic1 - Fedora:
sudo dnf install file-libs - Arch:
sudo pacman -S file - macOS (Homebrew):
brew install libmagic - Windows: no additional packages required
Qt Multimedia (for audio/video)
PySide6 uses system multimedia backends.
- Debian/Ubuntu:
sudo apt-get install gstreamer1.0-plugins-base gstreamer1.0-plugins-good - Fedora:
sudo dnf install gstreamer1-plugins-base gstreamer1-plugins-good - Arch:
sudo pacman -S gstreamer gst-plugins-base gst-plugins-good - macOS: typically bundled with Qt; if media playback fails, install
gstreamer - Windows: typically bundled with Qt; no additional packages required
Audio backend (PulseAudio)
For Linux audio playback, libpulse is commonly required by Qt Multimedia.
- Debian/Ubuntu:
sudo apt-get install libpulse0 - Fedora:
sudo dnf install pulseaudio-libs - Arch:
sudo pacman -S libpulse