Hexis
Hexis is a professional, cross-platform hardware pentesting and firmware pentesting framework. It acts as the "Ghidra + Wireshark + Flashrom" of hardware security, providing an end-to-end pipeline from physical flash extraction to binary security analysis.
Features
- Modular Driver Architecture (C23): Native C core engineered for extreme performance with capability-based driver routing and transactional hooks (
CAP_SPI,CAP_UART). - Dual-Format Project System: Store sessions as
.hexisprojdirectories with Content-Addressed Storage (CAS) for firmware deduplication, or export as portable.hexiszip archives. - Session Replay Engine: Logs all read/write/erase interactions to recreate automated hardware pentesting sessions.
- Knowledge Graph & Virtual Filesystem: Maps extracted firmware chunks into a hierarchical VFS and outputs findings to a native graph database structure.
- Event Bus & Job System: Completely asynchronous Pub/Sub backend ensuring the GUI remains perfectly responsive during massive memory dumps.
- Firmware Analysis Engine: Calculate Shannon entropy, parse ELF architectures, and scan for magic filesystem bytes (
SquashFS,uImage, etc.). - Secret & Vulnerability Scanner: Lightning-fast POSIX regex scanner identifying AWS keys, private certificates, and weak crypto markers directly inside firmware blobs.
Building
Requires a Unix-like environment (Linux / macOS / WSL) with CMake, GCC/Clang, Qt6, and libusb-1.0.
mkdir build && cd build
cmake ..
cmake --build .
Quick Start (CLI)
# Detect connected chip
python3 -m hexis.cli detect --driver ch341a
# Read firmware
python3 -m hexis.cli read firmware.bin
# Launch the GUI
./build/gui/hexis-gui
Architecture Overview
Hexis is split into three main layers:
libhexis(C23): The native shared object handling USB communication, chip databases, memory analysis, and plugins.hexis-gui(C++20/Qt6): The graphical dashboard for interactive hardware analysis.hexis(Python): High-level bindings and Typer CLI.
Developed by l3tchupkt / letchu.geek@gmail.com
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hexiskit-0.1.0.tar.gz.
File metadata
- Download URL: hexiskit-0.1.0.tar.gz
- Upload date:
- Size: 37.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d82dcc89c5a90f0c9e178f55810c94f6850814a2145e8f7dab8c50bf1fcf584
|
|
| MD5 |
32c42e12c7dd419996b0a4bd95b427be
|
|
| BLAKE2b-256 |
413da71ebf00a2de2d9ba7955f7e7b35f98bec17cf8ca14af0e9722b1c689cf7
|
File details
Details for the file hexiskit-0.1.0-cp313-cp313-manylinux_2_38_x86_64.whl.
File metadata
- Download URL: hexiskit-0.1.0-cp313-cp313-manylinux_2_38_x86_64.whl
- Upload date:
- Size: 199.6 kB
- Tags: CPython 3.13, manylinux: glibc 2.38+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6b7912d92edab2cf6c1555cfae33ade28d5a6b195d6523e48342768748791cf
|
|
| MD5 |
d7d8d8dd4b12910f7c9048fa1ea401e5
|
|
| BLAKE2b-256 |
8d6004de3297e1c45de75488192569a7c1abe8f55360e28781c4f775d20f7a06
|