risscheese/NexusForensics
GitHub: risscheese/NexusForensics
一款轻量级开源内存取证与实时威胁狩猎工具,支持跨平台物理内存抓取和统计异常检测。
Stars: 0 | Forks: 0
# Nexus Forensics 🔍
**磁力级内存获取与分析工具 (v3.5)**
Nexus Forensics 是一款功能强大、轻量级且通用的工具,专为内存取证和实时系统分析而设计。它能提供对系统状态的即时洞察,包括正在运行的进程、网络连接和潜在威胁,同时提供强大的物理内存获取能力。
## 功能特性
* **内存获取**:使用行业标准驱动程序(Windows 使用 `winpmem`,Linux 使用 `avml`)以多种格式(`raw`、`lime`、`mem`)捕获完整的物理 RAM。
* **实时仪表盘**:实时监控 CPU、RAM、进程数和运行时间。
* **威胁狩猎引擎**:
* **统计异常检测**:使用 Z-Score 识别 CPU/内存/线程使用异常的进程。
* **熵值分析**:利用香农熵 (Shannon Entropy) 检测具有随机名称的进程(通常是恶意软件)。
* **启发式分析**:标记可疑的名称、路径(临时/公共文件夹)和网络行为(例如 shells)。
* **进程资源管理器**:查看详细的进程元数据、打开的文件、加载的库 和内存映射。
* **多模式操作**:
* **CLI 模式**:占用空间极小,非常适合纯净的取证收集。
* **Web Server 模式**:通过浏览器访问完整的 UI(适用于远程分析)。
* **桌面应用程序 (EXE)**:独立且类似原生的应用程序,易于使用。
## 🛠️ 安装与系统要求
本项目基于 **Python** 构建。请确保已安装 Python(推荐 Python 3.8+)。
### Python 库
需要以下库:
* `flask` (Web 框架)
* `psutil` (系统监控与进程管理)
* `pywebview` (GUI/桌面应用封装)
* `requests`
### 设置
1. **克隆仓库**:
git clone https://github.com/risscheese/NexusForensics.git
cd NexusForensics
2. **安装依赖**:
py -m pip install -r requirements.txt
*(注意:如果缺少 `requirements.txt`,请运行:`py -m pip install flask psutil pywebview requests`)*
3. **二进制文件:外部驱动程序(必需)**:
* 确保这些文件位于根目录下,以便进行 Windows 内存捕获。
为了确保取证工具的安全性和完整性,本仓库不捆绑内存获取驱动程序。您必须从其官方来源下载:
**对于 Windows (WinPMEM):**
1. 从 [官方 WinPMEM 仓库](https://github.com/Velocidex/WinPmem/releases) 下载最新版本。
2. 查找名为 `winpmem_mini_x64_rc2.exe`(或类似名称)的文件。
3. **操作:** 将下载的文件重命名为 `winpmem.exe` 并将其放在根目录 `NexusForensics/` 文件夹中。
**对于 Linux (AVML):**
1. 从 [官方 AVML 仓库](https://github.com/microsoft/avml/releases) 下载最新版本。
2. **操作:** 将重命名后的 `avml` 二进制文件放在根目录 `NexusForensics/` 文件夹中,并确保它是可执行的(`chmod +x avml`)。
## 📖 用户指南
Nexus Forensics 可以根据您的需求在 **3 种不同的环境**中运行。
### 1. CLI 用法 (命令行界面)
*最适用于:需要在实时机器上进行取证数据收集,且最大限度减少噪音/痕迹至关重要的场景。*
**如何运行:**
以 **管理员身份** 打开终端(CMD 或 PowerShell)并运行:
```
py app.py --cli
```
**选项:**
* `--case [ID]`:指定 Case ID(默认:CASE001)。
* `--format [raw|lime|mem]`:选择输出格式(默认:raw)。
* `--output [filename]`:指定确切的输出文件名。
**交互式向导:**
如果您在没有参数的情况下运行 `py app.py --cli`,它将启动一个交互式向导:
```
[?] INTERACTIVE CAPTURE WIZARD
Case ID [CASE001]:
Output Format (raw/lime/mem) [raw]:
Start Capture? [Y/n]: y
```
### 2. 网页用法(浏览器模式)
*最适用于:详细分析、开发或远程监控。*
**如何运行:**
```
py app.py
```
或
```
DOUBLE CLICK
run_admin.bat file
```
* 应用程序将在 `http://127.0.0.1:5000` 启动一个本地 Web 服务器。
* 您的默认浏览器应会自动打开。
* **注意**:要执行内存捕获,您必须以 **管理员身份** 运行终端。
**功能:**
* **仪表盘**:系统健康状况概览。
* **进程**:所有正在运行的进程的可筛选列表。
* **威胁狩猎**:对可疑活动的详细分析。
* **捕获**:点击 "Start Acquisition" 通过 UI 转储 RAM。
### 3. EXE 用法(独立桌面应用)
*最适用于:在调查员机器或最终用户机器上便携使用。*
**如何运行:**
1. 在 `dist` 文件夹中找到 `NexusForensics.exe`(见下文 "Building")。
2. 右键单击并 **以管理员身份运行**(内存捕获必需)。
3. 将出现一个显示界面的原生窗口。
**构建 EXE:**
如果您想自己编译 `.exe`:
1. 运行构建脚本:
build_exe.bat
2. 在 `dist/NexusForensics.exe` 中找到输出。
## ⚠️ 重要提示
* **管理员权限**:内存获取(RAM 转储)需要 **管理员** 权限。如果在没有权限的情况下运行,工具将发出警报,并且捕获功能将被禁用。
* **杀毒软件干扰**:安全软件可能会标记 `winpmem` 或 `psutil` 使用的进程注入技术。您可能需要在分析期间将此工具加入白名单。
* **磁盘空间**:内存转储文件很大(等于物理 RAM 的大小)。在开始捕获之前,请确保有足够的可用磁盘空间。
## 🎖️ 鸣谢与致谢
Nexus Forensics 的运行使用了几个开源工具:
WinPMEM:用于 Windows 物理内存获取的核心驱动程序。
https://github.com/Velocidex/WinPmem
AVML:用于 Linux 系统的内存获取。
https://github.com/microsoft/avml
Flask:用于 Web 界面后端。
https://flask.palletsprojects.com/en/stable/
## ⚖️ 许可证与免责声明
免责声明:本工具仅用于合法的取证分析和教育目的。Nexus Forensics 的开发者不承担任何责任,也不对因本程序造成的任何误用或损害负责。在分析系统之前,请务必确保您已获得授权。
标签:AMSI绕过, DLL分析, Flask, HTTPS请求, HTTP请求, JARM, Linux取证, Mr. Robot, psutil, Python, SecList, Windows取证, Z-Score, 二进制发布, 内存分析, 内存取证, 后渗透, 威胁检测, 库, 应急响应, 开源工具, 异常检测, 数字取证, 无后门, 无线安全, 沙箱逃逸检测, 流量嗅探, 熵分析, 物理内存获取, 统计分析, 网络安全, 网络连接分析, 自动化脚本, 自定义脚本, 逆向工具, 隐私保护