四类关键取证产物
Windows 取证最常看的四类产物:Prefetch 记录程序执行次数与时间,Amcache 记录执行与安装相关信息,ShimCache 记录曾经出现过的可执行文件,UserAssist 记录用户交互过的程序。它们互相补位,用来还原「什么程序被执行过」。
解读原则
这些产物都只是痕迹,不能等同于「恶意执行」:必须配合事件日志、文件名、路径与时间戳交叉印证,并借助专用解析工具读取,直接打开原始文件很容易误读。
基本信息
| Prefetch | C:\Windows\Prefetch\*.pf(默认开启时存在) |
|---|---|
| Amcache | C:\Windows\AppCompat\Programs\Amcache.hve |
| ShimCache | 注册表 Session Manager\AppCompatCache |
| UserAssist | 用户 NTUSER.DAT 下的 UserAssist 子键 |
| 解析工具 | PECmd、AmcacheParser、AppCompatCacheParser、注册表离线解析工具 |
| 保存要求 | 原件只读导出,副本用于解析 |
典型使用场景
- 确认某个可疑程序是否在本机运行过
- 还原攻击者在主机上执行过的工具清单
- 与 4688、4104 事件交叉验证执行时间线
- 评估取证工具与横向移动工具的使用痕迹
- 清除后判断木马是否尝试再次执行
导出关键产物线索
导出关键产物线索
Get-ChildItem C:\Windows\Prefetch\*.pf | Sort-Object LastWriteTime -Descending | Select-Object -First 20 Name, LastWriteTime
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache" /v AppCompatCache
Get-Item C:\Windows\AppCompat\Programs\Amcache.hve -ErrorAction SilentlyContinue | Select-Object FullName, LastWriteTime
New-Item -ItemType Directory -Force C:\evidence\artifacts | Out-Null
Copy-Item C:\Windows\Prefetch\*.pf C:\evidence\artifacts\ -Force
reg export "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache" C:\evidence\artifacts\shimcache.reg /y产物对照读法
| 产物 | 能说明什么 | 不能说明什么 |
|---|---|---|
| Prefetch | 程序被执行过、执行次数与最近时间 | 无法证明是谁执行的,也无法给出完整参数 |
| Amcache | 执行过或安装过的程序信息与部分哈希 | 不代表当前仍存在该文件 |
| ShimCache | 该可执行文件曾在系统出现 | 不代表被执行过 |
| UserAssist | 用户交互过的程序与次数 | 服务与本机系统账户动作不一定记录 |
Prefetch 在部分系统或 SSD 环境下可能被关闭:先确认该功能状态,再判断「没有痕迹」的原因,不要直接得出「未执行」的结论。
留档与哈希固定
留档与哈希固定
Get-ChildItem C:\evidence\artifacts -Recurse | Get-FileHash -Algorithm SHA256 | Export-Csv C:\evidence\artifacts_hash.csv -NoTypeInformation
Get-CimInstance Win32_OperatingSystem | Select-Object Caption, Version, LastBootUpTime # 记录系统基线信息与其他证据的配合
- 4688 与 4104 事件补出命令行与脚本内容
- 计划任务与服务列表说明程序如何被拉起
- 文件系统时间戳说明落地与修改时刻
- 网络日志说明程序是否成功外连