Debolina1303/FORENSIQ

GitHub: Debolina1303/FORENSIQ

ForensIQ 是一个集成内存取证、机器学习异常检测和网络分析的统一数字取证 Web 框架,旨在简化和自动化网络攻击的调查流程。

Stars: 0 | Forks: 0

# ForensIQ — 统一数字取证框架 一个用于内存取证、基于 ML 的异常检测、 rootkit 检测和超级时间线生成的全栈 Web 应用程序。 ## 快速开始 (Mac) ``` # 1. 打开 Terminal 并导航到该文件夹 cd forensic-app # 2. 运行 setup script(安装所有内容并启动) chmod +x run.sh ./run.sh # 3. 打开浏览器 open http://localhost:5050 ``` ## 功能介绍 | 标签页 | 内容说明 | |---|---| | **Upload** | 拖放 `.vmem` / `.dmp` 内存转储文件 | | **Summary** | 攻击概述、高风险进程、C2 连接 | | **Processes** | 包含 ML 异常评分和风险条的完整进程列表 | | **Network** | 所有网络连接,C2 通道以红色标记 | | **Rootkit** | pslist 与 psscan 交叉对比视图 — 隐藏的 DKOM 进程 | | **Timeline** | 按时间顺序合并所有证据的超级时间线 | | **ML Results** | 包含可解释原因的各个进程异常评分 | ## 连接真实的 Volatility 默认情况下,应用程序使用逼真的模拟数据,因此您可以在没有真实 内存转储的情况下进行探索。要连接真实的 Volatility 3 输出: 1. 安装 Volatility 3:`pip install volatility3` 2. 针对您的内存转储运行: python3 -m volatility3 -f your_dump.vmem windows.pslist > pslist.txt python3 -m volatility3 -f your_dump.vmem windows.psscan > psscan.txt python3 -m volatility3 -f your_dump.vmem windows.netstat > netstat.txt 3. 在 `app.py` 中,更新 `parse_or_simulate_pslist()` 以从这些文件中读取数据。 ## 训练您自己的 ML 模型 请参阅 `train_model.py` 了解以下内容: - **Isolation Forest**(无需标注数据) - **Random Forest**(使用 CIC-MalMem-2022 数据集) 将您训练好的 `model.pkl` 放入 `models/` 文件夹中,应用程序将会自动使用它。 ## 技术栈 - **后端**:Python / Flask - **ML**:scikit-learn (Isolation Forest + Random Forest) - **取证**:Volatility 3(内存分析) - **前端**:原生 HTML/CSS/JS(无需构建步骤) - **可选**:通过 Docker 使用 ELK Stack 来展示 Kibana 仪表板 ## 项目结构 ``` forensic-app/ ├── app.py ← Flask backend + analysis pipeline ├── templates/ │ └── index.html ← Full web UI ├── requirements.txt ← Python dependencies ├── run.sh ← One-click Mac launcher ├── uploads/ ← Uploaded memory dumps go here └── models/ ← Trained ML models go here ```
标签:Apex, Flask, JARM, Python, Volatility 3, Windows 调试器, 全栈应用, 内存分析, 后端开发, 提权工具, 数字取证, 无后门, 机器学习, 自动化脚本, 请求拦截, 逆向工具