cyberpanonius/perun-dfir
GitHub: cyberpanonius/perun-dfir
一款 Windows 远程数字取证工具,通过 TLS 加密通道以写保护方式将目标机的磁盘、卷和内存暴露给取证端进行镜像或挂载,内置 SHA-256 校验与案件追踪。
Stars: 1 | Forks: 0
# Perun
通过加密通道进行远程取证。Perun 将目标计算机的磁盘、逻辑卷或 RAM 作为只读源通过 TLS 暴露出来,远程取证人员可以连接并对其进行镜像或挂载 —— 内置 SHA-256 完整性校验和案件追踪。
## 工作原理
两个角色,一个二进制文件:
- **`expose`** 运行在**目标机**(被取证的机器)上。它通过 TLS 将其磁盘/卷/RAM 作为 iSCSI LUN 提供服务。源是**写保护**的 —— 取证人员永远无法修改证据。
- **`acquire`** 运行在**取证机**上。它连接到目标机,列出可用源,并对其进行镜像或挂载。
## 环境要求
- Windows (x64),需**以管理员身份**运行(原始磁盘/RAM 和 iSCSI 需要此权限)。
- TLS 使用证书;请使用 `perun cert generate ` 生成证书。
## 快速开始
**在目标机上 —— 暴露证据:**
```
:: a single physical disk
perun expose -d \\.\PhysicalDrive0 --tls --psk MySecret --case CASE-2024-001
:: a logical volume (decrypted on a live, unlocked system)
perun expose -d \\.\C: --tls --psk MySecret --case CASE-2024-001
:: everything (all physical disks + all mounted volumes)
perun expose all --tls --psk MySecret --case CASE-2024-001
:: physical memory
perun expose --ram --tls --psk MySecret
```
**在取证机上 —— 获取证据:**
```
perun acquire
perun> add 192.168.1.50 3260 --tls --psk MySecret --case CASE-2024-001
perun> list # show sources (LUNs)
perun> select 0 # pick one
perun> verify # confirm the connection reads
perun> image evidence.dd # image it (SHA-256 at the end)
```
## 常用命令(acquire shell)
| 命令 | 作用 |
| --- | --- |
| `add [port] [--tls --psk --case ]` | 连接到目标机 |
| `targets` / `target ` | 列出 / 切换目标机 |
| `list` / `select ` / `info` | 浏览并选择证据 |
| `image ` | 对所选证据进行镜像(阻塞模式) |
| `image --bg ` | 在后台进行镜像;立即返回 |
| `mount [--bg]` / `mounts` / `unmount [id\|all]` | 将证据挂载为本地磁盘 |
| `acquireall ` | 对每个已连接主机上的每个源进行镜像 |
| `jobs` / `monitor` / `wait` / `stop ` | 跟踪并控制后台任务 |
| `batch ` | 从文件批量连接多个主机 |
后台任务(`image --bg`、`acquireall`)会释放提示符,以便您可以继续操作其他主机;`jobs` 会显示实时进度和最终的 SHA-256。
标签:iSCSI, SecList, 内存取证, 库, 应急响应, 底层编程, 数字取证, 磁盘取证, 自动化脚本, 远程取证