文章总结: ForensicCollector是一款开源Windows应急取证工具,通过Web界面勾选模块可自动采集12类数据(进程/网络/登录事件等)并生成CSV和EVTX文件。其核心功能包括登录事件自动标注暴力破解、异常登录等攻击行为,支持RDP缓存还原攻击者桌面截图。工具采用Go语言编译为单文件,无需依赖环境,适用于入侵排查、红蓝对抗等场景。 综合评分: 85 文章分类: 应急响应,安全工具,实战经验,安全运营,解决方案
Forensic Collector:一台 Windows 被搞了,插 U 盘点几下,10 分钟出时间线-发布版
原创
Pik安全实验室 Pik安全实验室
Pik安全实验室
2026年6月22日 09:30 广东
在小说阅读器读本章
去阅读
#
Pik 安全团队 | 2026-06-22
做应急的都经历过——半夜电话响了,”某台服务器有点异常,你上去看看”。
连上去之后的操作基本是肌肉记忆:tasklist、netstat、wmic、reg query、schtasks、wevtutil、浏览器导出历史、翻 USB 注册表、找 Prefetch、挖 RDP 缓存……十几个步骤,五六个工具轮流切换,一个半小时过去了,老板问”查得怎么样了”,你说”还在采数据”。
我们把这个流程写成了一件事:一个 exe,双击,浏览器里勾选模块,点开始,几分钟后所有取证数据导出为 Excel 能开的 CSV,外加全套事件日志 evtx。
开源地址:https://github.com/Pik-sec/forensic-collector
为什么市面上没有这种东西
不是没有采集工具。KAPE 很强,但配靶标(Target)对新手来说是门槛。商业取证套件很全,但几十万授权费加 50GB 安装包,不是给个人应急用的。而且它们都不做分析标注——只把原始数据导出来,不告诉你”这条记录可疑”。
Forensic Collector 做的就是这个区别:不仅采,还标。
12 个采集模块,一次跑完
Web 界面打开 http://localhost:8765,左边模块列表,右边输出预览。勾选你要的模块,点开始。
| | | |
| — | — | — |
| 模块 | 采集内容 | 亮点 |
| 进程导出 | wmic 全量 ProcessId/ParentProcessId/CommandLine | 多源交叉比对检测隐藏进程 |
| 网络导出 | TCP/UDP + DNS缓存 + ARP + 防火墙 | 走 GetExtendedTcpTable 原生 API,不调 netstat |
| 持久化检查 | Run/RunOnce/Winlogon/Shell/AppInit + 影子账号 | 自动检测 $ 后缀隐藏账户 + 非系统服务 |
| 计划任务 | schtasks 全量 CSV | 含触发条件/执行路径/最后运行时间 |
| 事件日志 | 全部 .evtx 导出 | wevtutil epl + SeBackupPrivilege 双策略 |
| **登录认证分析** | 4624/4625/4648/4776 等 7 个 ID | **自动标注爆破攻击/公网登录/Kerberos 异常** |
| PowerShell | PS 日志 + ConsoleHost_history.txt | 攻击者命令历史 |
| 浏览器历史 | Chrome/Edge/Firefox/Chromium/Brave | 内置 SQLite 解析,不依赖任何驱动 |
| Shellbags | 注册表 Shell\Bags | 资源管理器浏览目录结构 |
| Jump Lists | .automaticDestinations-ms | 最近打开文件路径+时间 |
| USB 痕迹 | USBSTOR + setupapi + DriverFrameworks | 插拔时间+盘符分配一条线 |
| RDP 缓存 | 注册表连接历史 + .bmc 缓存 | 配合 RdpCacheStitcher 还原攻击者桌面截图 |
登录认证分析——不只是导出日志
这是整个工具里最核心的模块。Security.evtx 动辄几十 MB,十几万条事件,不可能肉眼扫描。auth 模块做的事情是:
1. 自动提取 7 个关键 Event ID:4624(登录成功)/ 4625(登录失败)/ 4634(注销)/ 4648(显式凭据)/ 4672(特权分配)/ 4776(NTLM 验证)/ 1102(日志清除)
2. Logon Type 自动标注中文含义:Type 10 → RemoteInteractive / Type 3 → Network / Type 7 → Unlock
3. 4625 按源 IP 聚合计数:同一 IP 短时间大量 4625 → 标注”疑似暴力破解”
4. 源 IP 反查归属地:非企业网段 + 非工作时间登录 → 自动标记”异常 RDP 登录”
5. Session ID 串联事件链:4624 → 4634 / Event 24 → 25,还原攻击者”断开不登出”的隐身手法
输出是 Excel 直接打开的 CSV,标注列一眼就能定位异常。
输出长什么样
output/ ├── process_20240622_093000.csv ├── network_20240622_093000.csv ├── persistence_20240622_093000.csv ├── tasks_20240622_093000.csv ├── events_20240622_093000.csv ├── events_20240622_093000/ ← 全部 .evtx ├── auth_20240622_093000.csv ← 登录分析结果(含攻击标注) ├── powershell_20240622_093000/ ├── browser_20240622_093000/ ← history + cookies + downloads ├── shellbags_20240622_093000.csv ├── jumplists_20240622_093000.csv ├── usb_20240622_093000.csv └── rdp_20240622_093000/ ← 连接历史 + 缓存文件
全部 UTF-8 BOM CSV,Excel 打开不乱码。
外部工具联动——RDP 桌面截图还原
工具本身做采集,分析侧支持配置外部工具。在 Web 界面设好路径(留空自动找 tools\ 目录):
| | | | — | — | | 工具 | 效果 | | RdpCacheStitcher.exe | 把 RDP 缓存碎片还原成 BMP——直接看到攻击者当时屏幕上打开了什么文件夹、点了什么 | | BrowsingHistoryView.exe | 浏览器历史详细导出 | | USBDeview.exe | USB 设备详细痕迹 |
RDP 缓存还原是我们最推荐的功能。攻击者清日志、删工具很勤快,但几乎没人知道要去 AppData\Local\Microsoft\Terminal Server Client\Cache\ 下面删除 Cache0000.bin。这些碎片拼接还原后就是 80%-90% 可读的桌面截图——直接看到攻击者在屏幕上做了什么。
技术栈
-
Go 纯标准库 + Windows API,单文件编译,6MB
-
内置 SQLite 解析器(mattn/go-sqlite3)
– wevtutil epl + SeBackupPrivilege 双重日志导出
– GetExtendedTcpTable / GetIpNetTable 原生网络 API
- wmic 单次批量采集 + tasklist 交叉验证检测隐藏进程
需在 Windows 上编译。拷进 U 盘插上就能跑,不需要运行时、不需要 Python 环境、不需要配靶标。
什么场景用它
-
服务器被入侵 → 登录看谁连的、从哪连的、干了什么
-
内部失陷主机排查 → USB 有没有插过、浏览器有没有下过可疑文件
-
红蓝对抗复盘 → 攻击链时间线还原
-
等保/合规检查 → 一键导出所有取证数据留档
写在最后
我们自己就是做应急的。这个工具本质上是个自用工具——我们每次上去排查觉得缺什么就加什么,麻烦什么就自动化什么。开源出来让大家一起用,也方便社区反馈哪些场景还没覆盖。
GitHub:https://github.com/Pik-sec/forensic-collector
Star 不 Star 不重要,用着顺手就行。有功能需求提 Issue,有代码提交 PR。
PIK安全实验室 — 唯有热爱,不可辜负。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Pik安全实验室 Pik安全实验室 Pik安全实验室《Forensic Collector:一台 Windows 被搞了,插 U 盘点几下,10 分钟出时间线-发布版》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论