PoisonXploIT/wifi-marauder-viewer
GitHub: PoisonXploIT/wifi-marauder-viewer
基于 Flask 的 Web 可视化工具,用于解析和展示 M5StickC Marauder 固件的 WiFi 串口扫描日志,并提供与 Splunk 等平台集成的数据接口。
Stars: 1 | Forks: 0
# WiFi Marauder Viewer
用于可视化通过 M5StickC + Marauder 固件捕获的 WiFi 扫描结果的 Web Dashboard。
解析由 PuTTY 生成的 serial log,根据 BSSID 对网络进行去重,并提供 JSON/CSV API 以便与 sec-dashboard 或 Splunk 集成。
## 要求
- Python 3.10+
- 带有 Marauder 固件的 M5StickC(或 ESP32 Marauder)
- 处于 serial 模式并将日志保存到 `logs/wifi_scan_marauder.log` 的 PuTTY
```
pip install -r requirements.txt
```
## 用法
```
python app.py
```
打开 http://127.0.0.1:5000
### 参数
```
python app.py --log /ruta/log.log --port 8080 --host 0.0.0.0 --refresh 3
```
### 环境变量
| 变量 | 默认值 | 描述 |
|----------|---------|-------------|
| `MARAUDER_LOG_FILE` | `logs/wifi_scan_marauder.log` | PuTTY 日志的路径 |
| `MARAUDER_PORT` | `5000` | 服务器端口 |
| `MARAUDER_HOST` | `127.0.0.1` | 绑定的 Host |
| `MARAUDER_REFRESH` | `5` | 刷新间隔秒数 |
| `SPLUNK_HEC_URL` | (空) | Splunk HEC 的 URL |
| `SPLUNK_HEC_TOKEN` | (空) | Splunk HEC 的 Token |
## Endpoints
| 路径 | 描述 |
|------|-------------|
| `/` | 包含网络表格的 HTML Dashboard |
| `/api/scan.json` | 包含已检测到网络的 JSON API |
| `/api/scan.csv` | 导出 CSV |
| `/api/health` | Health check |
## 与 Splunk 集成
### 选项 1:直接使用 Splunk HEC
配置环境变量并启动:
```
export SPLUNK_HEC_URL=https://127.0.0.1:8088/services/collector
export SPLUNK_HEC_TOKEN=tu-token-aqui
python app.py
```
每次对 `/api/scan.json` 的请求都会将事件发送到 Splunk,sourcetype 为 `wifi:marauder`。
### 选项 2:导入 CSV
```
curl http://127.0.0.1:5000/api/scan.csv > wifi_scan.csv
```
在 Splunk 中作为 lookup 或 indexed input 导入。
### 选项 3:从 sec-dashboard 进行 REST API 轮询
```
curl http://127.0.0.1:5000/api/scan.json
```
响应:
```
{
"scan_time": "2026-06-26T18:00:00+00:00",
"total_networks": 2,
"networks": [
{
"channel": 6,
"rssi": -73,
"bssid": "d4:f8:29:a7:17:b0",
"essid": "MiFibra-17B0",
"first_seen": "2026-06-26T17:55:01+00:00",
"last_seen": "2026-06-26T18:00:00+00:00"
}
]
}
```
## 预览
```
Canal | RSSI | BSSID | ESSID | Primera vista | Ultima vista
------|------|--------------------|----------------|---------------|-------------
6 | -73 | d4:f8:29:a7:17:b0 | MiFibra-17B0 | 17:55:01 | 18:00:00
7 | -85 | 4c:ab:fb:33:54:b7 | MOVISTAR_9C29 | 17:55:03 | 18:00:00
```
## 许可证
MIT
标签:Flask, M5StickC, Python, WiFi扫描, 无后门, 日志解析, 物联网, 证书伪造, 逆向工具