ThanhTuanjk/RAMScope

GitHub: ThanhTuanjk/RAMScope

RAMScope 是一款基于 Volatility3 的 Windows 内存取证分流 CLI 工具,通过对内存 artifacts 进行标准化、关联、风险评分和可重现报告来提升取证分析的效率与严谨性。

Stars: 1 | Forks: 0

# RAMScope RAMScope 是一款基于 Volatility3 构建的防御性 Windows 内存取证分流 CLI 工具。Volatility 提取内存 artifacts;RAMScope 则以严谨的取证态度,对这些 artifacts 进行标准化、关联、优先级排序和报告。 ![CI](https://static.pigsec.cn/wp-content/uploads/repos/cas/39/39faa54be350a1dab8afd3b2fb8c1c83e4d9cff84abfef2374d19a18053687c4.svg) ![License](https://img.shields.io/badge/license-MIT-green.svg) ![Python](https://img.shields.io/badge/python-3.10%2B-blue.svg) ## 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 规则、评分逻辑或外部工具版本发生更改时,都应重复进行干净镜像和已知阳性的验收测试。
标签:安全规则引擎, 聊天机器人, 逆向工具