jupyterj0nes/masstin
GitHub: jupyterj0nes/masstin
一款用Rust编写的高速DFIR工具,可解析多种取证证据并自动构建跨操作系统的统一横向移动时间线,支持图数据库可视化。
Stars: 5 | Forks: 0
# Masstin - 横向移动追踪工具!
Lateral movement tracker for anything!
[](https://www.gnu.org/licenses/agpl-3.0) [](https://www.rust-lang.org/) []()
**Masstin** 是一款用 Rust 编写的快速 DFIR 工具,用于解析取证证据并将横向移动数据统一到单一的时间线中。它支持 Windows EVTX、Linux 日志、Winlogbeat JSON 和 EDR API — 所有数据合并为一个 CSV,可直接用于分析或图数据库可视化(Neo4j、Memgraph)。
名称来源于 [Mastín Leonés](https://en.wikipedia.org/wiki/Spanish_Mastiff) — 来自西班牙莱昂山区的守护犬。与其同名犬一样,Masstin 守护着您的网络,追踪每一次移动。
## 目录
- [主要功能](#key-features)
- [安装](#install)
- [使用方法](#usage)
- [输出格式](#output-format)
- [图可视化](#graph-visualization-neo4j--memgraph)
- [所有选项](#all-options)
- [支持的证据类型](#supported-artifacts)
- [文档](#documentation)
- [路线图](#roadmap)
- [许可证](#license)
- [联系方式](#contact)
## 主要功能
| 功能 | 描述 | 详情 |
|---------|-------------|---------|
| **统一的跨操作系统镜像解析** | **新增功能:** 单独的 `parse-image` 命令可自动检测每个分区的操作系统 — NTFS 分区使用 Windows 解析(EVTX + UAL + VSS),ext4 分区使用 Linux 解析(auth.log、wtmp 等)— 全部合并到一个时间线中。将 `-d` 指向包含混合 Windows 和 Linux 镜像的文件夹,获取单一的时间顺序 CSV。无需手动步骤,无需挂载。 | [取证镜像](https://weinvestigateanything.com/en/tools/masstin-vss-recovery/) |
| **批量证据处理** | 将 `-d` 指向证据文件夹,masstin 会递归查找所有 E01/VMDK/dd 镜像,自动检测操作系统,从活动卷和 VSS 中提取所有取证证据,生成统一的时间线。摘要中的按镜像分组显示确切哪个镜像产生了哪些事件。一个命令,整个事件。 | [取证镜像](https://weinvestigateanything.com/en/tools/masstin-vss-recovery/) |
| **BitLocker 检测** | 通过读取 VBR 偏移 3 处的 `-FVE-FS-` 签名自动检测 BitLocker 加密分区。向分析人员发出精确分区偏移的警告,并跳过加密卷 — 不会浪费时间在无法读取的数据上。 | [取证镜像](https://weinvestigateanything.com/en/tools/masstin-vss-recovery/ |
| **streamOptimized VMDK** | 完全支持 streamOptimized VMDK(使用 zlib 压缩的 grains),常见于 OVA 导出、云模板和 vSphere 备份。还通过 `.filepart` 回退处理不完整的 SFTP 上传(适用于平面 VMDK)。 | [取证镜像](https://weinvestigateanything.com/en/tools/masstin-vss-recovery/) |
| **VSS 快照恢复** | 从卷影副本中检测和提取 EVTX — 恢复被攻击者删除的事件日志。使用 [vshadow-rs](https://github.com/jupyterj0nes/vshadow-rs) | [VSS 恢复](https://weinvestigateanything.com/en/tools/masstin-vss-recovery/) |
| **已挂载卷支持** | 将 `-d D:` 指向已挂载的卷,或使用 `--all-volumes` 扫描每个 NTFS 磁盘 — 无需先成像即可进行活动 EVTX + VSS 恢复 | |
| **UAL 解析** | 自动检测和解析用户访问日志(SUM/UAL)ESE 数据库 — 3 年的服务器登录历史,可抵御事件日志清除 | [UAL](https://weinvestigateanything.com/en/tools/masstin-ual/) |
| **MountPoints2 注册表** | 从每个用户配置文件中提取 NTUSER.DAT 并解析 MountPoints2 注册表项 — 揭示哪个用户连接了哪个远程共享(\\\\SERVER\\SHARE),带有时间戳。可抵御事件日志清除。支持带有事务日志恢复的脏注册表(.LOG1/.LOG2)。 | [MountPoints2](https://weinvestigateanything.com/en/artifacts/mountpoints2-lateral-movement/) |
| **EVTX carving** | `carve-image` 在未分配空间的原始磁盘数据中扫描 EVTX 块(`ElfChnk`)— 即使日志和 VSS 都被删除,也能恢复横向移动事件。从 carved 的块构建合成的 EVTX 文件,并通过完整管道进行解析。 | [EVTX carving](https://weinvestigateanything.com/en/tools/evtx-carving-unallocated/) |
| **多证据解析** | 来自 11 个 EVTX 源的 32+ 个 Windows 事件 ID + 计划任务 XML + MountPoints2 注册表 + Linux 日志 + Winlogbeat JSON + Cortex XDR | [证据类型](#supported-artifacts) |
| **事件分类** | 每个事件分类为 `SUCCESSFUL_LOGON`、`FAILED_LOGON`、`LOGOFF` 或 `CONNECT`,并带有可读性强的失败原因 | [CSV 格式](https://weinvestigateanything.com/en/tools/masstin-csv-format/) |
| **统一时间线** | 所有来源合并为具有 14 个标准化列的单一时间顺序 CSV | [CSV 格式](https://weinvestigateanything.com/en/tools/masstin-csv-format/) |
| **跨平台时间线** | Windows EVTX + Linux SSH + EDR 数据在一个时间线中 — `parse-image` 自动跨操作系统边界合并,或使用 `merge` 进行手动组合 | |
| **压缩 triage 支持** | 递归 ZIP 提取,自动检测取证密码 | |
| **图可视化** | 直接上传到 [Neo4j](
### 解析 Linux 日志
解析 Linux 系统日志和会计条目以提取 SSH 会话和身份验证事件。支持 Debian/Ubuntu(`auth.log`)和 RHEL/CentOS(`secure`)日志格式,以及 RFC3164(旧式 syslog)和 RFC5424(结构化)时间戳格式。
```
masstin -a parse-linux -d /evidence/var/log/ -o linux-timeline.csv
```
Lateral movement tracker for anything!
[](https://www.gnu.org/licenses/agpl-3.0) [](https://www.rust-lang.org/) []()