TL;DR. 勒索软件运营者通常会删除工具并重启。ShimCache 往往能幸存下来,保留加密之前投放器与跳板工具的路径。请同时取走 SYSTEM 配置单元 和 一份内存镜像(如果主机尚未干净重启),然后用 AmCache 做基于哈希的归因印证。
勒索软件调查是逆风的取证:磁盘已加密、工具已删除、事件日志有时被截断,而攻击者倾向于让系统重启。ShimCache 是为数不多在这种环境下仍能回答基础问题的证据之一。本文是它的战术使用指南。
在勒索软件案例中 ShimCache 通常保留了什么
在典型的勒索软件应对中,当你介入时:
- 加密器二进制通常 已不在 —— 被自身或清理脚本删除。
- 如果攻击者想到,Prefetch 目录可能被 清空。
- 事件日志可能被 截断(Event ID 1102 是经典指示)。
- AmCache 因持续写入而 保留,但其中只有 Windows 来得及登记的二进制。
- ShimCache 保留了上一次干净关机时被刷盘的部分 —— 而那往往就是入侵早期运行过的投放器与跳板工具。
由于 ShimCache 只在关机时写盘(详见此处),最 有用 的状态通常是在被入侵主机重启之前从其内存镜像中提取。如果系统已经重启,磁盘上的配置单元仍能给出当时已被持久化的内容。
ShimCache 能回答的三个问题
1. 加密前跑过什么?
按 mtime 排序 ShimCache,从可疑的加密时间窗向后回溯。位于 \Temp\、\AppData\、\ProgramData\ 的投放器路径会反复出现。哈希请与 AmCache 交叉验证(见 ShimCache 与 AmCache)。
2. 他们还横向移动到了哪里?
ShimCache 也记录所连卷上的可执行文件。命中 UNC 路径(\\?\UNC\)或异常盘符意味着横向移动基础设施 —— 用来做 staging 的文件服务器、共享的管理员工具目录、被试图清除的备份卷。
3. 跳板工具是什么? PSExec、WMIExec、mimikatz、Cobalt Strike beacon、AnyDesk / TeamViewer 安装程序、自定义 loader —— 都会在 ShimCache 中留下痕迹。许多勒索软件 playbook 会复用相同的工具名;用你的标准指标列表对 ShimCache 做一次扫描,能很快揪出它们。
简短工作流
- 从磁盘获取 SYSTEM 配置单元 (
C:\Windows\System32\config\SYSTEM+ 事务日志)。对仍在运行的主机,再额外采集内存镜像 —— 见 从内存转储中提取 ShimCache。 - 解析 为
(路径, mtime, 格式)表。Shimcache Parser 让配置单元离线驻留在你的浏览器里。 - 按勒索软件 playbook 的特征 过滤:加密器名称、RMM 安装程序(AnyDesk、ScreenConnect、Splashtop)、凭据工具、用于外发数据 staging 的归档工具(
7z、winrar)。 - 用 恶意软件狩猎工作流 进行 分诊。
- 把 ShimCache、AmCache、Prefetch 与事件日志结合,构建时间线 —— 时间线一文 涵盖了工具选择。
- 警惕篡改。 在被入侵主机上出现可疑地短或空的 ShimCache,本身就是一种指示 —— 见 反取证检测。
不要言过其实
勒索软件报告中的 ShimCache 证据会被保险公司、法律顾问、威胁情报团队仔细审视。务必准确:
- 对
encryptor.exe的 ShimCache 命中只能证明 该文件曾出现在磁盘上。它 不能 证明就是该文件执行了加密(这是 关于执行证明的告诫)。 - mtime 是文件的最后修改时间,不是勒索软件运行的时刻。
- 进行基于哈希的归因时,始终以 AmCache 的 SHA-1 互相印证。
延伸阅读
- Velociraptor 的
Windows.Registry.AppCompatCache—— 跨大量受害主机的规模化采集。 - Eric Zimmerman 的 AppCompatCacheParser —— 个案离线解析。
- ShimCache & AmCache forensic analysis (Mehrnoush) —— 扩展版 IR 解读。