skep13/hexbee-forensics
GitHub: skep13/hexbee-forensics
一个完全离线运行的分布式数字取证与事件响应平台,通过多设备协同和哈希链技术实现现场证据采集、分析与完整性保障。
Stars: 0 | Forks: 0
# 🐝 HexBee Forensics
**分布式数字取证与事件响应 (DFIR) 平台。**
*检测 · 隔离 · 分析。*
这是一种可现场部署的替代方案,用于替代 Autopsy 和 Magnet AXIOM 等台式工具,
它围绕由专用设备组成的分布式 Hive 构建,而不是单一的
工作站 —— 所有功能(分析、地图、参考、AI)均完全在
**离线** 状态下运行,并且每个工件都保存在具有防篡改能力的哈希链中。
```
Target Computer ──USB──> 🐝 Scout (ESP32-S3 agent)
│ Wi-Fi / MQTT
▼
🏠 Hive (Raspberry Pi 3B+ evidence hub)
│ Wi-Fi / REST
┌────────────────┼────────────────┐
▼ ▼ ▼
👑 Queen (Kali/T470) 📱 iPhone XR 🧠 Hive Mind
analysis + Comb field companion local AI (offline)
```
## 它的功能(对比 Autopsy / AXIOM)
- **Comb 取证工具包**(Queen 端):带有 SHA-256 和 magic-byte
类型识别的文件清查,**扩展名不匹配检测**(隐藏为 .jpg 的 .exe),从原始镜像中进行签名 **file carving**,**MBR/GPT** 分区解析,**EXIF/GPS**
提取,**浏览器历史记录**(Chrome/Firefox),以及在可用时集成 Sleuth Kit。
其独特之处在于:发现的结果会直接上传到 Hive 的
**哈希链证据日志** 中,因此分析工件能获得与实时取证相同的
监管链。
- **离线证据地图**:一个自托管的平移地图(零外部 JS),提供
标准的 **MBTiles** 服务,绘制从证据中恢复的 GPS 坐标。
- **离线参考库**:提供 **ZIM 档案** 服务(通过
Kiwix 访问离线维基百科)以及本地的 HTML/Markdown/PDF 现场文档。
- **Hive Mind 本地 AI**:通过本地 Ollama
模型进行案例总结和证据问答 —— 绝不连接互联网 —— 并在未安装模型时提供确定性的基于规则的回退机制。
- **iPhone XR 现场助手**:一个可安装到主屏幕的 PWA(无需 App Store),
将相机拍摄的照片进行哈希处理并加入链中,并为每个案例生成 **QR 标签**,可通过
iPhone 相机扫码打开案例。
- 此外还有平台核心功能:事件 **关联**、**timeline** 重建、
**案例管理**、**IOC** 匹配、RBAC、搜索和品牌化报告。
## 仓库布局
| 路径 | 说明 |
|------|------------|
| [hive/](hive/) | Hive 服务器:MQTT+REST 数据接入、哈希链 SQLite 证据日志、关联、timeline、案例、IOC 引擎、离线地图、参考库、Hive Mind AI、iPhone 现场 PWA、QR 标签、Flask 仪表板 + REST API |
| [comb/](comb/) | **Comb** 取证分诊工具包 (`hexbee-comb`) —— 清查、file carving、分区、EXIF/GPS、浏览器历史记录、Sleuth Kit,并将发现上传至 Hive |
| [queen/](queen/) | Queen 分析师 CLI (`hexbee-queen`) —— 案例、事件、搜索、IOC、AI、通过 Hive REST API 生成报告,仅依赖标准库 |
| [scout/firmware/](scout/firmware/) | ESP32-S3 ESP-IDF 固件:Wi-Fi、MQTT QoS 1、离线事件缓冲、心跳、USB 监控(在完成硬件验证前为模拟模式) |
| [scout/simulator/](scout/simulator/) | Python Scout 模拟器 —— 使用真实场景驱动整个平台,无需硬件 |
| [docs/](docs/) | 架构、部署和 API 参考 |
| [tests/](tests/) | pytest 测试套件(48 个测试),覆盖 Hive 核心、IOC、Comb 和现场功能 |
## 快速开始(开发,任何操作系统)
```
cd hive
py -m venv .venv && .venv\Scripts\pip install -e . # Windows
# python3 -m venv .venv && .venv/bin/pip install -e . # Linux/macOS
# 配置 data dir + REST ingest key,创建用户,启动 web app
set HEXBEE_DATA_DIR=%CD%\..\dev-data
set HEXBEE_INGEST_KEY=devkey
.venv\Scripts\hexbee-hive init
.venv\Scripts\hexbee-hive user add admin administrator
.venv\Scripts\hexbee-hive web
```
然后在另一个终端中,向其触发一个模拟事件:
```
py scout\simulator\scout_sim.py --rest http://127.0.0.1:8080 --key devkey --scenario incident
```
打开 http://127.0.0.1:8080 —— 仪表板将显示事件、
一个自动关联的事件,以及一个经过验证的证据哈希链。创建一个案例,
将事件分配给它,并导出 HTML/CSV/JSON 报告。
### 运行 Comb 分析并查看数据流入
```
cd comb
py -m pip install -e .
# 将其指向挂载的镜像或提取的文件夹;将 findings 上传到 Hive
hexbee-comb scan /path/to/mounted_evidence \
-o report.html --hive http://127.0.0.1:8080 --key devkey
```
可执行文件、扩展名不匹配的文件、带有 GPS 标记的照片和浏览器历史记录现在
将作为关联证据出现在 Hive 中 —— 带有 GPS 的图像会显示在 **地图**
页面上。让 **Hive Mind** 总结案例,并为
物理证据袋打印一张 **QR 标签**。
### 离线数据(全部可选,全部本地化)
| 功能 | 将文件拖放至 | 获取来源(在任何联网机器上) |
|---------|-----------------|----------------------------------|
| 地图 | `/maps/*.mbtiles` | OpenMapTiles, Mobile Atlas Creator, QGIS |
| 维基百科 | `/reference/*.zim` | `download.kiwix.org/zim/`(需要 `pip install libzim`) |
| 现场文档 | `/reference/*.{html,md,pdf}` | 您自己的 SOP / 法规 / 手册 |
| 本地 AI | — | 在 Queen 上执行 `ollama pull llama3.2`,并设置 `HEXBEE_AI_URL` |
### iPhone XR 现场助手
在 iPhone 上(与 Hive 处于同一网络),在
Safari 中打开 `http://:8080/field` → 分享 → **添加到主屏幕**。您将获得一个独立的应用程序,用于查看
未结事件、直接将证据照片拍摄并加入到哈希链中,以及
扫描案例 QR 标签。
## 生产环境(Raspberry Pi 3B+)
```
cd hive
sudo bash install.sh
```
安装 Mosquitto、一个专用的 `hexbee` 用户、位于
`/opt/hexbee` 下的 virtualenv、位于 `/var/lib/hexbee` 下的数据,以及随系统启动的 systemd 服务单元
(`hexbee-engine`、`hexbee-web`)—— 完全无头运行。详见
[docs/DEPLOYMENT.md](docs/DEPLOYMENT.md)。
## 证据完整性
每个事件都会被追加到 SHA-256 **哈希链**中
(`event_hash = sha256(prev_hash ‖ canonical_event)`)。任何追溯性的编辑
或删除都会破坏从该点开始的验证。
```
hexbee-hive verify # on the Hive
hexbee-queen verify # remotely from the Queen
```
分析师的行动(登录、案例更改、打标签、报告生成)都会记录在
仅追加的审计日志中,以支持监管链。
## 角色
| 角色 | 权限 |
|------|-----|
| viewer | 读取所有内容:仪表板、搜索、timeline、报告 |
| investigator | + 创建/关闭案例、记录笔记、为证据打标签、分诊事件 |
| administrator | + 用户管理、审计日志 |
## 状态
目前已实现:完整的 Hive 平台(接入 → 标准化 → 哈希链 → 关联 →
timeline → 案例 → 报告)、IOC 引擎、带有 Hive 上传功能的 Comb 取证工具包、
离线证据地图、离线参考/维基百科库、Hive Mind 本地 AI
(带有基于规则的回退机制)、具有相机到链上传功能和
QR 标签的 iPhone 现场 PWA、Queen CLI 以及 Scout 模拟器。**48 个测试通过。**
受硬件/可选依赖项限制:Scout 的 TinyUSB 取证路径、MSC
分诊、设备身份/事件签名以及 MQTT TLS(固件骨架以
模拟模式运行);离线维基百科需要 `libzim`;对话式 AI 需要
本地 Ollama 模型(基于规则的总结器可在没有模型的情况下工作);MBTiles/ZIM
内容由用户提供。
标签:AI风险缓解, 分布式系统, 响应大小分析, 应急响应(DFIR), 数字取证, 物联网, 离线AI, 自动化脚本, 边缘计算, 逆向工具