ThanhTuanjk/RAMScope
GitHub: ThanhTuanjk/RAMScope
RAMScope 是一款基于 Volatility3 的 Windows 内存取证分流 CLI 工具,通过对内存 artifacts 进行标准化、关联、风险评分和可重现报告来提升取证分析的效率与严谨性。
Stars: 1 | Forks: 0
# RAMScope
RAMScope 是一款基于 Volatility3 构建的防御性 Windows 内存取证分流 CLI 工具。Volatility 提取内存 artifacts;RAMScope 则以严谨的取证态度,对这些 artifacts 进行标准化、关联、优先级排序和报告。



## RAMScope 是什么
RAMScope 是用于授权的 Windows 内存取证工作的分析与报告层。它保留 Volatility 的输出,记录覆盖率和超时情况,并将观察到的 artifacts 与线索及经证实的发现区分开来。
它不是 Volatility3、防病毒产品或自动恶意软件判定引擎的替代品。报告始终需要分析师的验证,缺失或超时的证据会被报告为“未评估”,而不是“干净”。
## 架构
```
flowchart LR
A[Memory image] --> B[Evidence hashing]
B --> C[Volatility3 collection]
C --> D[Raw JSON and coverage]
D --> E[Normalization]
E --> F[Process and artifact correlation]
F --> G[YARA and optional tools]
G --> H[Evidence-gated scoring]
H --> I[Markdown HTML PDF reports]
```
## 0.4 版本的变更
- 高/严重级别需要来自独立来源的相互印证的证据。单独的 YARA 匹配、VAD 权限、loader 不匹配、网络 endpoint 或 plugin 行仅作为需要分析师验证的线索。
- `Disabled`、不可用的值、截断的进程名以及备用 Windows 设备路径均经过防御性处理。
- PEB、loader、VAD、hollowing、ghosting、线程、互斥锁、计划任务和时间线结果通过其语义字段来解释,而不仅仅依赖于行的存在。
- `malfill` 在转储前进行扫描。默认采用定向转储,以减少不必要的超时和磁盘 I/O。
- `--workers auto` 能够在性能良好的系统上并行运行安全的 metadata plugin,同时全内存扫描保持串行执行。
- 案例配置、运行时标志、YARA 规则、plugin 解析和工具来源会被快照保存,以确保可重现的重新评估。
- 重新评估会写入一个独立的目录,并且报告渲染不会重新运行分析。
- Windows 10 是当前经过验证的基线。在干净的 Windows 11 镜像完成验收测试套件之前,Windows 11 仍保持兼容就绪状态。
## 安装
```
python -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e ".[dev,volatility,yara,pdf]"
```
如需从 GitHub 进行干净的检出:
```
git clone https://github.com/ThanhTuanjk/RAMScope.git
cd RAMScope
.\scripts\install.ps1
```
当发布到索引时,该包也可以在发布后使用 `pip install ramscope` 安装,或者从 `dist/` 中检出的 wheel 安装。Git URL 安装命令为:
```
python -m pip install "git+https://github.com/ThanhTuanjk/RAMScope.git"
```
可选的静态分析工具:
```
python -m pip install -e ".[tools]"
```
`flare-floss` 在 Python 3.13 上被有条件地排除,因为其当前的传递构建依赖在该环境中并不总是可用。FLOSS 仍然是可选的,RAMScope 会将其记录为不可用,而不是让取证 pipeline 失败。
## 验证安装
```
python -m compileall -q src tests
python -m pytest -q
ruff check .
mypy src
python -m build
ramscope doctor
```
## 分析
```
ramscope analyze --input C:\Dumps\memory.raw --case CASE001 --output C:\Cases --format html --deep
ramscope analyze --input C:\Dumps\memory.raw --case CASE001 --output C:\Cases --format all --full --workers auto
ramscope reassess --case C:\Cases\CASE001 --format html
ramscope report --case C:\Cases\CASE001 --format html
```
请同时查看生成的报告、原始的 `raw/volatility/` 输出、标准化的 artifacts、清单以及证据覆盖率。超时、不支持的 plugin、解析器拒绝或缺失的输出会使该行为保持未评估状态;这绝不能作为主机是干净的证明。
Profile 是累积的:`core` 是默认的分流集合,`deep` 添加了更广泛的 Windows artifacts,而 `full` 添加了最全面支持的 plugin 计划和可选的富集。Plugin 的可用性仍然取决于安装的 Volatility3 构建版本和目标镜像。
## 输出和重新评估
每个案例都包含证据 metadata、不可变的原始收集数据、标准化的 artifacts、可选的定向转储、IOC 视图、报告、日志和清单。使用 `ramscope reassess` 可以从经过哈希验证的原始结果重新运行分析层,而无需重新运行 Volatility 或修改源案例。
详情请参阅 `docs/installation.md`、`docs/usage.md`、`docs/architecture.md`、`docs/risk-scoring.md`、`docs/yara.md` 和 `docs/troubleshooting.md`。
## 取证局限性
RAMScope 是一款分流和关联工具,不能替代 Volatility3 或分析师验证。每当 Volatility、Windows 构建、YARA 规则、评分逻辑或外部工具版本发生更改时,都应重复进行干净镜像和已知阳性的验收测试。
标签:安全规则引擎, 聊天机器人, 逆向工具