20232304-冯天悦-数字取证Windows取证技术

🔍 实践题目一:Windows 快捷方式(LNK)数字取证分析

一、实验目标

通过分析 Windows 系统中已有的 .lnk 快捷方式文件,掌握以下数字取证技术:

  1. 理解 LNK 文件二进制结构
  2. 提取时间戳信息(创建时间、修改时间、访问时间)
  3. 解析目标路径、命令行参数、工作目录
  4. 识别用户行为痕迹和系统使用历史
  5. 使用 PowerShell 和十六进制工具进行取证分析

二、实验环境准备

要求:

  • Windows 10/11 操作系统
  • PowerShell(管理员权限建议)
  • 可选:HxD、010 Editor 等十六进制编辑器(用于进阶分析)

注意事项:

  • ⚠️ 只读分析:本实验仅读取已有 LNK 文件,不修改、不创建、不删除任何文件
  • 建议先对分析目录建立只读工作副本(如复制到分析文件夹)

三、实验任务(共 5 个阶段)

阶段 1:LNK 文件发现与枚举

任务: 在你的系统中找出所有 LNK 文件并建立清单

在这里我使用Everything工具来搜索LNK文件,并导出结果到文本文件中,方便后续分析。
搜索结果如下图所示:
img
将结果导出为txt文件,如图所示:
img

可以看到,在我的电脑中有很多的LNK文件。
思考问题:

  1. Recent 文件夹中的 LNK 文件数量说明了什么?
    img
    这是我的Recent文件夹中的LNK文件,可以看到有很多的LNK文件,Recent文件夹中的文件数量代表了用户近期访问的文件和功能的数量
  2. 为什么有些 LNK 文件的访问时间比修改时间更新?
    访问时间更新可能表明用户最近访问过该文件,但未修改它

阶段 2:元数据提取与分析

任务: 使用LCEmd解析 LNK 文件内部结构

我们选择桌面上的“云校”快捷方式进行分析,如图所示:
img

分析结果:

1. 文件基本信息

  • 源文件位置:C:\Users\Alexander\Desktop\云校.lnk
  • 目标文件:C:\Users\Alexander\AppData\Local\Programs\ccwork-pc-lite-dky2025\云校.exe
  • 文件大小:136,360,448字节(约130MB),表明目标是一个较大的可执行文件

2. 时间线分析

时间类型 源文件时间 目标文件时间 取证意义
创建时间 2026-04-10 10:25:51 2026-04-10 10:25:51 快捷方式与目标文件同时创建
修改时间 2026-04-10 10:25:51 2026-03-25 09:24:48 目标文件在快捷方式创建前已存在
访问时间 2026-04-20 08:16:52 2026-04-10 10:25:51 最近在2026-04-20被访问

时间线重建:

  1. 2026-03-25 09:24:48 - "云校.exe"文件最后修改
  2. 2026-04-10 10:25:51 - 快捷方式创建,同时目标文件被访问
  3. 2026-04-20 08:16:52 - 快捷方式最近被访问(与当前日期2026-04-20相符)

3. 系统环境信息

  • 用户身份:SID S-1-5-21-3333147022-388276462-576926093-1001(标准用户账户)
  • 应用程序标识:com.inspur.ccwork.pc.lite.dky2025(浪潮云校应用)
  • 存储位置:用户AppData目录,表明是用户级安装而非系统级安装

4. 硬件与网络信息

  • 驱动器信息:
    • 卷序列号:707BE347
    • 卷标签:Windows-SSD
    • 驱动器类型:固定存储介质(硬盘)
  • 网络共享:\\LAPTOP-DNKQK6RK\Users(本地网络共享)
  • 追踪器数据库块(关键取证证据):
    • 机器ID:laptop-dnkqk6rk
    • MAC地址:00:50:56:c0:00:08
    • MAC厂商:VMWARE
    • 创建时间:2026-04-10 10:02:35

5. 安全分析要点

  1. 虚拟机环境:MAC地址00:50:56:c0:00:08属于VMWARE虚拟网卡,表明该LNK文件可能是在虚拟机环境中创建的
  2. 应用程序来源:"ccwork-pc-lite-dky2025"目录名中的"dky2025"可能表示特定版本或定制版本
  3. 文件路径特征:目标位于AppData\Local\Programs,这是现代Windows应用程序的常见安装位置
  4. 权限警告:输出中显示"Warning: Administrator privileges not found!",表明工具未以管理员权限运行

思考问题:

  1. TargetPath 指向不存在的文件意味着什么?
    证据价值:可能表明程序已被卸载或文件被移动
  2. Arguments 字段可能包含哪些敏感信息?
    如用户名、密码、服务器地址等
  3. 比较 LNK 文件的创建时间和目标文件的创建时间,能推断出什么?
    比较LNK文件的创建时间和目标文件的创建时间,可以推断出该快捷方式的生成时机与目标文件之间的关系。在本次解析结果中,两者创建时间完全相同(均为2026-04-10 10:25:51),这强烈表明该快捷方式是在目标文件被创建或首次访问的同一时刻自动生成的,很可能是安装“云校”应用程序时由安装程序或系统自动创建桌面快捷方式的典型行为。同时,目标文件的修改时间(2026-03-25)早于其创建时间,这暗示该可执行文件可能并非在此系统上原始编译生成,而是从其他位置(如安装包)复制或解压到当前目录的,而复制操作会更新文件的“创建时间”属性。因此,这种时间模式支持该快捷方式属于正常软件安装过程的推断,而非事后手动创建或恶意活动所为。

阶段 3:时间线分析(Timeline Analysis)

任务: 构建用户活动的时间线

我们在Recent文件夹中使用Everything中按照访问时间进行倒序,如图所示:
img

此即为用户活动的倒序时间线,可以看到用户最近访问的文件和目录。

思考问题:

  1. 通过 LNK 文件的访问时间序列,能否重建用户的操作时间线?
    通过LNK文件的访问时间序列,可以有效地重建用户的部分操作时间线。LNK文件本身会记录其创建时间、最后修改时间和最后访问时间,而文件内部的元数据还包含了目标文件的原始时间戳。通过分析这些时间戳的先后顺序和模式,可以推断出用户创建快捷方式、访问应用程序或文档的大致时间点,甚至结合多个LNK文件的访问时间,勾勒出用户在一段时间内的工作习惯或软件使用频率。然而,这种重建的时间线是间接的,其精确性可以通过关联系统事件日志、注册表UserAssist键值或Shellbag条目等其他证据来增强。
  2. 哪些文件类型的快捷方式出现频率最高?这反映了用户的什么行为模式?
    在我的环境中,出现频率最高的快捷方式通常指向可执行文件(.exe)、办公文档(如.docx、.xlsx、.pptx)、PDF文件以及目录文件夹。这直接反映了用户的核心行为模式:频繁启动常用的应用程序(如浏览器、办公软件、专业工具)和访问经常使用的文档与项目文件夹。例如,大量办公文档的快捷方式可能表明用户主要从事文书处理工作;而众多设计软件或开发工具的快捷方式则可能指向创意或技术职业。因此,快捷类型的分布是洞察用户职业性质和工作流程的重要侧面。
  3. 如果某些 LNK 文件指向已删除的目标文件,这在取证中有什么意义?
    如果某些LNK文件指向已删除的目标文件,这在数字取证中具有非常重要的意义。它意味着用户或系统曾创建并使用过该目标文件,尽管主体文件已被有意或无意删除,但快捷方式作为“数字足迹”被保留下来。调查人员可以从这些“孤立”的LNK文件中提取出宝贵信息,包括已删除文件的完整原始路径、大小、属性、图标以及创建和访问时间戳。这为恢复已删除文件提供了明确的线索,并能证明某个特定文件在系统上存在过的事实,对于还原事件历史、发现试图隐藏证据的行为(例如在删除敏感文件后忽略了清理其快捷方式)至关重要。

阶段 4:二进制结构分析(进阶)

任务: 使用 010 Editor的lnk文件模版 解析 LNK 文件头结构

我们还是解析“云校.lnk”,结果如下:
img

思考问题:

  1. LNK 文件头中的 GUID 有什么作用?
    LNK 文件头中的 GUID(全局唯一标识符)主要用于标识和验证。它的核心作用是唯一标识此文件是一个符合微软 Shell Link 二进制文件格式的合法快捷方式,确保系统能正确识别和解析。这个GUID也隐含了格式的版本信息,防止与其他文件类型混淆。
  2. HasLinkTargetIDList 标志位为真意味着什么?
    HasLinkTargetIDList标志位为真,意味着该LNK文件内部包含一个 Target ID List​ 结构。这是快捷方式指向目标的核心路径信息之一,它使用一系列 ItemID​ 来层层描述目标在 Shell 命名空间中的位置(例如,从“桌面”到某个文件夹,再到具体文件)。这个列表提供了目标在系统逻辑视图中的位置,与后续可能存在的 LinkInfo结构(提供物理磁盘路径)互为补充,共同精确定位目标。
  3. 为什么二进制解析的时间戳可能与文件系统时间戳不同?(哪个更可信?)
    二进制解析的时间戳可能与文件系统显示的时间戳不同,主要有两个原因。首先,存储格式的差异:LNK文件内部将时间戳存储为 Windows FILETIME(1601年以来的100纳秒间隔数),而文件系统管理器(如资源管理器)显示的是转换后的本地人类可读日期时间。其次,时间戳的来源不同:LNK文件内部存储的是它记录的目标文件时间戳(创建、修改、访问),这些是在快捷方式创建时从原始目标文件“快照”下来的。而之后在文件系统查看到的,是目标文件当前的时间戳属性。如果目标文件在快捷方式创建后被修改过,这两个时间自然会不一致。这种差异在取证中恰恰是有价值的,它可以揭示文件在创建快捷方式之后的状态变化。

阶段 5:综合取证报告

任务: 基于以上分析,撰写一份简化的数字取证报告

报告:

# LNK 文件数字取证分析报告

## 1. 案件信息
- 分析对象:"C:\Users\Alexander\Desktop\云校.lnk"
- 分析时间:2026.4.20 16:37:00
- 分析工具:WinHex + 010Editor + LCEmd + Everything
- 分析范围:Recent 文件夹

## 2. 证据摘要
- 发现 LNK 文件总数:163
- 有效链接(目标存在):163
- 无效链接(目标不存在):0


## 3. 关键发现
### 3.1 用户活动时间线
- 最近访问的 5 个文件:
c:\Users\Alexander\AppData\Roaming\Microsoft\Windows\Recent\云校.lnk c:\Users\Alexander\AppData\Roaming\Microsoft\Windows\Recent\Misc工具.zip.lnk c:\Users\Alexander\AppData\Roaming\Microsoft\Windows\Recent\作业.lnk c:\Users\Alexander\AppData\Roaming\Microsoft\Windows\Recent\微信图片_20260331225158_5956_43.png.lnk c:\Users\Alexander\AppData\Roaming\Microsoft\Windows\Recent\信息隐藏技术-实验一.ppt.lnk
- 高频访问的应用程序类型:办公类

### 3.2 异常发现
- 指向不存在目标的 LNK:无
- 包含异常参数的 LNK:无
- 时间戳异常(如未来时间、极早时间)的 LNK:无

## 4. 取证价值评估
- LNK 文件可以证明用户在特定时间访问过特定文件
- 无效链接可能表明试图掩盖痕迹的行为
- 命令行参数可能泄露账户信息或内部网络结构

## 5. 技术局限性
- 时间戳可能被系统或用户修改
- LNK 文件不包含文件内容本身,仅包含指向信息
- 需要结合其他证据(如 Prefetch、Jump Lists)进行交叉验证

四、学习要点总结

取证技术 应用场景 关键指标
文件枚举 发现潜在证据源 文件位置、数量
元数据解析 重建用户操作 TargetPath, Arguments
时间戳分析 建立事件时间线 CreationTime, LastAccessTime
二进制解析 深度验证和恢复 Header flags, FILETIME

六、安全与伦理提醒

  1. 只读原则:本实验所有操作均为读取,不修改系统状态
  2. 隐私保护:分析他人计算机需获得合法授权
  3. 证据链:实际取证中需记录哈希值(SHA-256)确保证据完整性

🔍 实践题目二:Windows JumpList 数字取证分析

一、实验目标

通过分析 Windows 系统自动生成的 JumpList 文件,重建用户近期对应用程序的使用行为,掌握数字取证中"用户活动痕迹分析"的核心技术。

二、理论知识准备

JumpList 是什么?
JumpList 是 Windows 7 及以后版本引入的功能,记录用户最近使用的文档和应用程序访问历史,存储于以下路径:

%APPDATA%\Microsoft\Windows\Recent\AutomaticDestinations\
%APPDATA%\Microsoft\Windows\Recent\CustomDestinations\

关键文件格式:

  • .automaticDestinations-ms:自动生成的跳转列表(包含时间戳、文件路径、访问次数等)
  • .customDestinations-ms:用户固定(Pinned)的项目
  • 文件名为应用程序的 AppID(如 9b1ded6d9d3a43af 对应 Word 2016)

三、实验环境要求

  • 系统:Windows 10/11
  • 工具:允许使用任何取证工具(如 NirSoft 的 JumpListsView、Eric Zimmerman 的 JLECmd、手动十六进制分析等)
  • 原则:只读分析,严禁修改或创建任何新文件

四、实践任务(分阶段进行)

阶段 1:定位与提取

  1. 在你的用户目录下找到 JumpList 存储路径
    在本机上找到的JumpList文件如下图所示:
    img
    img
  2. 统计 AutomaticDestinations 和 CustomDestinations 文件夹中各有多少个 JumpList 文件
    各有58个和14个文件。
  3. 列出文件大小最大的前 3 个 JumpList 文件及其对应的 AppID
    img
    对应的AppID分别为:5f7b5f1e01b83767、f01b4d95cf55d32a、d1f9f136d9250b62

思考:为什么不同应用程序的 JumpList 文件大小差异巨大?这与应用程序类型有何关联?

不同应用程序的JumpList文件大小差异巨大,这主要源于应用程序类型、使用频率以及系统记录机制的相互作用。JumpList是Windows系统中用于记录用户最近访问文件和任务的功能,分为自动目的地和自定义目的地两种类型。自动目的地文件由系统在用户与应用程序交互时自动生成,其大小直接反映了用户使用该应用程序的频繁程度和操作复杂度。

文档处理类应用程序如Microsoft Word或Excel,由于用户经常打开多个文档文件,每个文件访问都会在JumpList中留下记录,因此这些应用程序的JumpList文件通常较大。相反,系统工具类应用程序如计算器或记事本,功能简单且用户交互有限,生成的JumpList数据量就小得多。多媒体应用程序如视频播放器或图片查看器,会记录大量媒体文件访问历史,这也可能导致较大的JumpList文件。

应用程序是否支持自定义JumpList功能也是重要因素。一些应用程序允许开发者添加特定的用户任务,这些自定义内容会增加JumpList的数据量。此外,用户的使用习惯,如将常用项目固定到JumpList中,会将这些固定项目存储在自定义目的地文件中,进一步影响文件大小。不同类型的应用程序吸引用户固定项目的频率不同,例如设计软件用户可能更倾向于固定常用模板,而浏览器用户可能固定常用网站。

系统默认存储最近10个访问记录,但这一限制可以通过注册表修改。应用程序标识符(APPID)的差异也可能影响系统如何组织和存储JumpList数据。总体而言,JumpList文件大小的差异是应用程序功能复杂性、用户使用强度以及系统记录机制共同作用的结果,反映了不同应用程序在用户工作流中的角色和重要性。

阶段 2:应用识别与关联

  1. 识别你计算机上最常见的 5 个 AppID 对应的应用程序(可使用公开对照表或工具自动识别)
    使用JumpListViewer查看结果如下:
    img
    前五个分别是:Windows的快捷访问,Windows Explorer,WPS Office,JetBrains PyCharm IDE,以及Microsoft Edge,其中WPS Office和PyCharm是结合文件内容确定的。
  2. 对每个识别出的应用程序,提取其 JumpList 中记录的最近访问文件/文件夹路径
    分别是:
    Entry #: 0375 - This PC\E:\2026年下学期文件\数字取证\JumpListExplorer.zip
    Path E:\2026年下学期文件\数字取证
    Path E:\2026年下学期文件\数字取证\第05章-Windows取证.pptx
    Entry #: 1478 - This PC\D:\PyCharm 2023.3.4\bin\pycharm64.exe
    Entry #: 0018 - Internet Folder\http://www.msftconnecttest.com/redirect
  3. 验证这些路径是否仍然存在于你的文件系统中(存在/已删除/已移动)
    全部都仍存在我的电脑上
    技术提示:JumpList 文件头部包含 0x00000001 标识,条目结构遵循 MS-SHLLINK 格式。

阶段 3:时间线重建

  1. 从 JumpList 中提取至少 10 条记录的时间戳信息(创建时间、修改时间、访问时间)
  2. 将这些时间戳按时间顺序排列,绘制用户活动时间线
    活动时间线如下:
    img
  3. 分析以下问题:
    • 哪个时间段是用户最活跃的使用时段?
    • 是否存在工作时间的非工作应用使用痕迹?
    • 某些文件的"最后访问时间"与文件系统记录是否一致?如果不一致,可能的原因是什么?

根据图片中的文件操作记录进行分析,用户最活跃的使用时段集中在2026年4月20日的凌晨至清晨。具体来看,从02:36至08:15之间存在密集且连续的文件访问记录,尤其在07:38至07:53期间,针对“数字取证”课程作业文件夹的创建、修改和访问操作极为频繁,表明这是一段高效的工作或学习时段。前一日(4月19日)的傍晚前后(如17:49至17:57)也有一个较活跃的峰值,主要与“毛概”和“信息隐藏技术”课程文件访问相关。

关于工作时间的非工作应用使用痕迹,图片中确实存在值得关注的记录。例如,在2026年4月20日02:36,有一条指向“E:...\数字取证\Winpreetchowxwechat_files...”的路径访问记录。这表明在凌晨时段,系统访问了与微信(WeChat)相关的文件目录。虽然凌晨通常不被视为常规工作时间,但该文件却位于一个“数字取证”课程相关的文件夹内,这增加了复杂性。一种合理的推测是,用户可能正在为数字取证课程作业或实验分析微信相关数据(如缓存文件),从而留下了此次痕迹。因此,这既可能是学术工作的一部分,也不能完全排除是非工作应用的使用。结合整个时段主要处理学习文件来看,其用于学习的可能性较高。
关于某些文件的“最后访问时间”与文件系统记录是否一致的问题,图片中显示了典型的不一致案例。例如,第161、162、163行中的文件,其“Target Created On”(创建时间)和“Target Modified On”(修改时间)分别可以追溯到2026年3月、2025年10月和2025年9月,但这三个文件的“Target Accessed On”(最后访问时间)却非常集中地更新在2026年4月19日17:49至17:56这短短几分钟内。这种多个旧文件在几乎相同时刻被访问的模式,极不可能是用户自然、逐一浏览的操作结果。导致这种不一致的最可能原因是系统工具或用户操作的批量处理。例如,用户可能在该时段运行了磁盘清理、杀毒扫描、文件索引重建、备份软件,或对父文件夹进行了压缩、复制、移动等操作。这些系统级进程会为了读取文件而触发访问时间戳的更新,从而导致这些文件的“最后访问时间”被统一修改为批量操作发生的时间,而非用户实际手动打开查看文件的时间。

阶段 4:深度分析与取证价值评估

  1. 删除痕迹分析:检查 JumpList 中是否包含指向已删除文件或不存在路径的记录。这些"孤儿记录"在取证中有何价值?
    所有记录的“Absolute Path”均指向有效的驱动器路径(如E:\、D:\),未发现明确标记为不存在或已删除的路径(例如路径中包含??或明显无效的字符)。但是,在取证实践中,“孤儿记录”指的是JumpList中保存的、指向的目标文件在磁盘上已不存在的记录。其核心价值在于,即使文件被用户主动删除,其在JumpList中的访问记录仍可能保留,这为调查者重建用户的历史文件访问活动、发现被刻意清理的证据提供了关键线索。例如,通过解析这些残留的记录,可以知道用户曾在某个时间点打开过某个敏感文件,即便该文件本体已被移除。
  2. 证据完整性:JumpList 数据是否可以被用户轻易清除?如何验证 JumpList 数据是否被篡改或清理过?
    JumpList数据(位于%APPDATA%\Microsoft\Windows\Recent\AutomaticDestinations和CustomDestinations)虽然藏得较深,但并非不可被用户清除。有一定知识的用户可以通过磁盘清理工具、第三方隐私清理软件或手动删除这些.jumplist文件来清除记录。验证JumpList是否被篡改或清理,可从以下几方面入手:一是检查JumpList文件本身的系统时间戳(创建、修改、访问时间),若发现其修改时间异常(如在用户声称无活动的时段被修改),则可能被工具处理过;二是计算JumpList文件的哈希值,与已知备份或基线进行比对;三是分析记录的逻辑连贯性。例如,如果系统长期使用,但JumpList中记录的数量异常稀少,或时间跨度存在不合理的巨大断层,而同期系统事件日志显示计算机处于活跃状态,这就强烈暗示了清理行为。

六、拓展思考(加分项)

  1. 如果嫌疑人知道 JumpList 的存在并手动删除了 .automaticDestinations-ms 文件,你还能从哪些地方找到替代证据?
    即使嫌疑人手动删除了.automaticDestinations-ms文件,调查者仍可从多个系统位置寻找替代证据来重建用户活动。关键来源包括注册表中的RecentDocs和UserAssist项,前者记录了最近打开的文档,后者则追踪了通过资源管理器启动的程序及其执行次数。此外,%USERPROFILE%\Recent目录下的LNK快捷方式文件包含了目标文件的路径、大小、时间戳和卷信息,是重要的文件访问证据。预读取文件(Prefetch)能揭示程序的执行历史,而ShellBag注册表项则记录了用户访问过的文件夹视图设置。其他潜在来源还包括事件日志、浏览器历史、回收站记录、卷影副本以及文件系统的MFT(主文件表)中的时间戳等。
  2. JumpList 中的时间戳是基于本地系统时间还是 UTC?这在跨时区取证中有何影响?
    关于时间戳,JumpList中记录的时间通常是基于UTC(协调世界时)的FILETIME格式。在跨时区取证中,这意味着调查者必须将获取的UTC时间戳,根据取证时系统或证据来源机器的时区设置,转换为对应的本地时间,以准确理解用户行为发生的实际时刻。如果调查涉及多个处于不同时区的系统,统一使用UTC作为基准进行时间线对齐至关重要,可以避免因时区混淆导致的时序错误。
  3. 某些应用程序(如浏览器)的 JumpList 与传统文档型 JumpList 在结构上有何差异?
    浏览器类应用程序的JumpList与传统文档处理软件(如Word)的JumpList在结构和内容上存在显著差异。传统文档型JumpList主要记录用户最近打开的具体文件路径,其结构遵循自动目的地(OLE格式)或自定义目的地(MS-SHLLINK二进制格式)的规范。而浏览器(如IE)的JumpList功能更为复杂,它不仅可能记录最近访问的网页URL,还包含“固定网站”等自定义类别,并允许开发者通过元标签或JavaScript定义跳转列表中的动态任务,如“在新标签页打开”。因此,浏览器JumpList的分析可能揭示用户的网页浏览习惯、常访问站点以及特定的网页交互任务,其数据结构和语义与传统文件访问记录有所不同。

我来为你设计一个基于Windows Prefetch的数字取证实践题目。Prefetch是Windows系统重要的取证证据来源,包含程序执行历史、时间戳和文件访问记录等关键信息。


🔍 实践题目三:Windows Prefetch 数字取证分析

一、实验背景

场景设定:你是一名企业安全分析师,需要调查一台Windows工作站在过去30天内的程序执行活动。该计算机未安装任何额外取证软件,你需要仅使用系统自带工具和常见取证工具,从现有的Prefetch文件中提取证据。

调查目标:

  1. 确定该计算机上高频使用的应用程序
  2. 重建用户的操作时间线
  3. 发现异常或可疑的程序执行模式

二、实验环境准备

前置要求(请确认你的环境):

  • Windows 10/11 操作系统
  • Prefetch功能已启用(默认启用)
  • 管理员权限(用于访问 C:\Windows\Prefetch 目录)
  • 可选工具:WinPrefetchView、PECmd、FTK Imager、Autopsy等

三、实验任务(共5个阶段)

阶段一:Prefetch 文件基础清点

任务:完成Prefetch目录的基线调查。

操作指引:

  1. 打开命令提示符(CMD)或文件资源管理器,导航至 C:\Windows\Prefetch
  2. 统计Prefetch文件的总数量和总大小
  3. 列出所有不同的应用程序前缀(即文件名中"-"之前的部分)
  4. 找出文件体积最大和最小的Prefetch文件各3个

img
img
总数量为572个,总大小为17.2MB
所有的前缀如下:

010 EDITOR 12.0.1
010EDITOR
[随波逐流]CTF编码工具 V5.8 20240515
ADDINUTIL
AI-AGENT
AM_DELTA
AM_DELTA_PATCH_1.449.142.0
AM_DELTA_PATCH_1.449.148.0
AM_DELTA_PATCH_1.449.177.0
APPACTIONS
APPLICATIONFRAMEHOST
APPLYPATCH
APPPROVISIONINGPLUGIN
APPVSHNOTIFY
AUDIODG
BACKGROUNDTASKHOST
BACKGROUNDTRANSFERHOST
BANDIZIP
BIZ_HELPER
BUGREPORT
CANVA
CHCP
CHOICE
CHSIME
CKG_SERVER_WINDOWS_X64
CLEANMGR
CMD
CODE-TUNNEL
CODE
CODESETUP-STABLE-41DD792B5E65
COMPATTELRUNNER
COMPPKGSRV
CONHOST
CONSENT
CORE_ PACKAGED
CRASHLOG_EXTRACTOR
CRASHPAD_HANDLER
CREDENTIALUIBROKER
CTFMON
CXSTUDY
DASHOST
DATAEXCHANGEHOST
DBINSTALLER
DEFRAG
DIFF_2052_12.1.0.25225_UNIFIE
DISMHOST
DLLHOST
DOTNET-RUNTIME-9.0.15-WIN-X64
DRVINST
DSAARCDETECT64
DSATRAY
ELEVATION_SERVICE
EMDRIVERASSIST
ESRV
ESRV_SVC
EVERYTHING
EXPLORER
FENCES
FILECOAUTH
FILESYNCHELPER
FINDSTR
FLASHPLAYERAX_INSTALL_CN
FNHOTKEYCAPSLKNUMLK
GACONTROLLER
GAHIGHLIGHT
GAMEBAR
GAMEINPUTREDISTSERVICE
GIT
GLDRIVERQUERY
GLDRIVERQUERY64
GOOGLEUPDATE
HEADLESSCOMMAND
HIPSDAEMON
HIPSMAIN
HIPSTRAY
HRUPDATE
ICACLS
IDEA64
IDENTITY_HELPER
INNO_UPDATER
INTEGRATOR
INTELSOFTWAREASSETMANAGERSERV
IPF_HELPER
ISGPET
JAVAW
JUMPLISTEXPLORER
KAIDEPLOYSERVER
KSCMAIN
KSOLAUNCH
KSOMISC
KWINAPPINSTALLER
LECMD
LEGIONZONE
LENOVODRVTRAY
LENOVOOOBEPLUGIN
LGHUB
LGHUB_AGENT
LGHUB_SOFTWARE_MANAGER
LGHUB_SYSTEM_TRAY
LGHUB_UPDATER
LIVECAPTIONS
LOCKAPP
LOGONUI
LSF
LZMAIN
LZSTRATEGY
LZTRAY
LZUPDATE
M365COPILOT
MATLAB
MATLABWEBUI
MESSAGINGPLUGIN
MICONT_SERVICE
MICROSOFT.MEDIA.PLAYER
MICROSOFTEDGE_X64_147.0.3912.
MICROSOFTEDGEUPDATE
MIPCAUDIO
MISCREENSHARE
MISERVICEPRIVACY
MISMARTSHAREHANDOFF
MIUSERLOGON
MKSSANDBOX
MMC
MOBAXTERM
MOBAXTERM_PERSONAL_24.3
MONOTIFICATIONUX
MOTTYNEW
MOUSOCOREWORKER
MPCMDRUN
MPSIGSTUB
MSCORSVW
MSEDGE
MSEDGE_PROXY
MSEDGEWEBVIEW2
MSIEXEC
MSRDC
MWDOCSEARCH
NAHIMIC3
NAHIMICNOTIFSYS
NETCFGNOTIFYOBJECTHOST
NETSTAT
NGEN
NGENTASK
NHNOTIFSYS
NOTEPAD
NPCAP-1.87
NPFINSTALL
NVCONTAINER
NVDISPLAY.CONTAINER
NVNGX_UPDATE
NVOAWRAPPERCACHE
OAWRAPPER
OBS64
OFFICEC2RCLIENT
OFFICECLICKTORUN
OLK
ONEAPP.IGCC.WINSERVICE.LACE
ONEDRIVE
ONEDRIVE.SYNC.SERVICE
OPENCONSOLE
OPENWITH
PCCLIPBOARD
PDFSDK
PECMD
PERFBOOST
PHONEEXPERIENCEHOST
PHOTOLAUNCH
PHOTOS.AUTOPLAY
PHOTOS
PICKERHOST
PING
PINYINUP
PIPX
PIXPIN
POWERCFG
POWERSHELL
POWERTOYS.SHORTCUTGUIDE
POWERTOYS.SVGTHUMBNAILPROVIDE
PROMECEFPLUGINHOST
PWSH
PYCHARM64
PYTHON
PYTHON3.11
QMBROWSER
QMWEIYUN
QQ
QQMUSIC
QQMUSICAGENT
QUARK_CLOUD_DRIVE
QUARKCLOUDDRIVE
QUARKCLOUDDRIVEPC_V6.5.1.711_
REG
REGEDIT
REGSVR32
RG
RTKAUDUSERVICE64
RUNDLL32
RUNONCE
RUNTIMEBROKER
SC
SCHTASKS
SDBINST
SDXHELPER
SEARCHFILTERHOST
SEARCHHOST
SEARCHINDEXER
SEARCHPROTOCOLHOST
SECTASK
SECURITYHEALTHHOST
SECURITYHEALTHSERVICE
SECURITYHEALTHSYSTRAY
SEREGISTERDYNAMIC
SEWORKER
SGBIZLAUNCHER
SGDOWNLOAD
SGSMARTASSISTANT
SGTOOL
SH
SHELLEXPERIENCEHOST
SHELLHOST
SMARTENGINEHOST64
SMARTENGINEHOSTN64
SMARTSCREEN
SOFTLANDINGTASK
SOGOUCLOUD
SOGOUCOMMGR
SOGOUEXE
SOGOUIMEBROKER
SOGOUSMARTASSISTANT
SOGOUSVC
SOGOUTOOLKITS
SOGOUWIN10SETUP
SPATIALAUDIOLICENSESRV
SPPSVC
SRTASKS
SSH
STARTMENUEXPERIENCEHOST
STEAM++.ACCELERATOR
STEAM++
STEAM
STEAMERRORREPORTER
STEAMERRORREPORTER64
STEAMSERVICE
STEAMSYSINFO
STEAMWEBHELPER
STOREDESKTOPEXTENSION
SVCHOST
SYSPROXY
SYSTEMPROPERTIESADVANCED
SYSTEMSETTINGS
SYSTEMSETTINGSADMINFLOWS
TASK
TASKHOSTW
TASKLIST
TASKMGR
TEXTINPUTHOST
THUMBCACHE_VIEWER
TIMEOUT
TIWORKER
TOBII.EYETRACKING.BACKGROUNDI
TOBII.EYETRACKING.PORTAL.WPF.
TRANSLUCENTTB
TRUSTEDINSTALLER
TURBOVNC
TYPORA
UNINSTALL
UNSECAPP
UPDATER
UPDATESELF
USERNETSCHEDULE
USEROOBEBROKER
UTILITY
VC_REDIST.X64
VC_REDIST.X86
VEDETECTOR
VERGE-******
VIRTUALBOX
VMNETCFG
VMWARE-TRAY
VMWARE-VMX
VMWARE
VOL
VSCE-SIGN
VSSVC
VULKANDRIVERQUERY
VULKANDRIVERQUERY64
W32TM
WAASMEDICAGENT
WEBEXPERIENCEHOSTAPP
WECHATAPPEX
WEIXIN
WEMEETAPP
WERFAULT
WEVTUTIL
WIDGETS
WIDGETSERVICE
WIFITASK
WINDOWSCAMERA
WINDOWSDESKTOP-RUNTIME-9.0.15
WINDOWSPACKAGEMANAGERSERVER
WINDOWSTERMINAL
WINHEX V20.1 SR-3_X86_X64中文解锁
WINHEX64
WINPREFETCHVIEW
WINSTORE.APP
WIRESHARK
WLANEXT
WMIADAP
WMIC
WMIPRVSE
WPP
WPS
WPSCLOUDSVR
WPSPDF
WPSUPDATE
WSCTRL
WSCTRLSVC
WSL
WUAUCLTCORE
XIAOMIPCMANAGER
XWIN_MOBAX

其中最大的三个文件是
img
最小的三个文件是:
img
思考问题:

  • 为什么不同程序的Prefetch文件大小差异显著?
    不同程序的Prefetch文件大小差异显著,主要是因为Prefetch文件记录了应用程序启动时加载的文件和资源信息。复杂程序(如大型开发工具、游戏)需要加载更多DLL、配置文件和资源,因此生成的Prefetch文件更大;而简单程序(如命令行工具)加载内容少,文件自然较小。此外,从Windows 10开始Prefetch文件被压缩,但压缩率因内容而异,也会影响最终大小。
  • 文件命名格式 程序名-哈希.pf 中的哈希值代表什么?
    Prefetch文件命名格式 程序名-哈希.pf中的哈希值代表应用程序执行路径的唯一标识。它根据可执行文件的完整路径计算生成,具体过程包括:确定完整路径、转换为Unicode字符串、转换为设备字符,最后调用哈希函数生成8位十六进制值。对于dllhost.exe、mmc.exe、rundll32.exe等特殊程序,命令行参数也会参与哈希计算。这意味着同一程序从不同位置启动或使用不同参数时,会生成不同的哈希值,从而产生多个Prefetch文件,确保文件唯一性。

阶段二:时间线分析

任务:重建程序执行时间线,识别用户活跃时段。

操作指引:

  1. 使用资源管理器的详细信息视图,按"修改日期"排序所有Prefetch文件
  2. 记录最近7天内被更新的Prefetch文件列表
    C:\Windows\Prefetch\CMD.EXE-0BD30981.pf
    C:\Windows\Prefetch\GIT.EXE-0D29D03D.pf
    C:\Windows\Prefetch\GIT.EXE-D9AE510E.pf
    C:\Windows\Prefetch\SVCHOST.EXE-18C5C6E4.pf
    C:\Windows\Prefetch\SVCHOST.EXE-F952D9A9.pf
    C:\Windows\Prefetch\SVCHOST.EXE-E8870FF5.pf
    C:\Windows\Prefetch\SOFTLANDINGTASK.EXE-45887BAE.pf
    C:\Windows\Prefetch\WPSUPDATE.EXE-6003545E.pf
    C:\Windows\Prefetch\WPSCLOUDSVR.EXE-8A26A3A9.pf
    C:\Windows\Prefetch\KSOLAUNCH.EXE-76E38A93.pf
    C:\Windows\Prefetch\SPPSVC.EXE-96070FE0.pf
    C:\Windows\Prefetch\TASKHOSTW.EXE-2E5D4B75.pf
    C:\Windows\Prefetch\SEARCHPROTOCOLHOST.EXE-69C456C3.pf
    C:\Windows\Prefetch\SOGOUSVC.EXE-3A1114B2.pf
    C:\Windows\Prefetch\BIZ_HELPER.EXE-EDD0FCC0.pf
    C:\Windows\Prefetch\PDFSDK.EXE-8B1B19AE.pf
    C:\Windows\Prefetch\SOGOUCOMMGR.EXE-C778EA12.pf
    C:\Windows\Prefetch\SGBIZLAUNCHER.EXE-099BBFEE.pf
    C:\Windows\Prefetch\SVCHOST.EXE-3CF81F86.pf
    C:\Windows\Prefetch\WPS.EXE-384D1257.pf
    C:\Windows\Prefetch\AUDIODG.EXE-AB22E9A6.pf
    C:\Windows\Prefetch\POWERSHELL.EXE-CA1AE517.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-2C5A250C.pf
    C:\Windows\Prefetch\BACKGROUNDTASKHOST.EXE-CAD1DF16.pf
    C:\Windows\Prefetch\SVCHOST.EXE-852EC587.pf
    C:\Windows\Prefetch\STOREDESKTOPEXTENSION.EXE-D99E7776.pf
    C:\Windows\Prefetch\DLLHOST.EXE-5FA98F46.pf
    C:\Windows\Prefetch\DLLHOST.EXE-5EF634A0.pf
    C:\Windows\Prefetch\DLLHOST.EXE-CF8FB61D.pf
    C:\Windows\Prefetch\DLLHOST.EXE-C29B39A7.pf
    C:\Windows\Prefetch\DLLHOST.EXE-A15F3076.pf
    C:\Windows\Prefetch\CONSENT.EXE-40419367.pf
    C:\Windows\Prefetch\SVCHOST.EXE-73D024B2.pf
    C:\Windows\Prefetch\SVCHOST.EXE-9A28EB78.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-F30D6B28.pf
    C:\Windows\Prefetch\MOUSOCOREWORKER.EXE-44A01CE7.pf
    C:\Windows\Prefetch\WEIXIN.EXE-307C58CD.pf
    C:\Windows\Prefetch\LENOVODRVTRAY.EXE-745ADC2C.pf
    C:\Windows\Prefetch\CMD.EXE-6D6290C5.pf
    C:\Windows\Prefetch\WMIC.EXE-311B5CB4.pf
    C:\Windows\Prefetch\FENCES.EXE-59689F91.pf
    C:\Windows\Prefetch\TIWORKER.EXE-873BC5D6.pf
    C:\Windows\Prefetch\TRUSTEDINSTALLER.EXE-766EFF52.pf
    C:\Windows\Prefetch\SVCHOST.EXE-FA38241C.pf
    C:\Windows\Prefetch\SVCHOST.EXE-C2DA4F6F.pf
    C:\Windows\Prefetch\SDBINST.EXE-49E8B208.pf
    C:\Windows\Prefetch\DLLHOST.EXE-7D5CE0CA.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-B2BB82C3.pf
    C:\Windows\Prefetch\WINDOWSPACKAGEMANAGERSERVER.E-17E3E613.pf
    C:\Windows\Prefetch\COMPATTELRUNNER.EXE-B7A68ECC.pf
    C:\Windows\Prefetch\JUMPLISTEXPLORER.EXE-911C81FE.pf
    C:\Windows\Prefetch\MSIEXEC.EXE-CDBFC0F7.pf
    C:\Windows\Prefetch\WINDOWSDESKTOP-RUNTIME-9.0.15-66744547.pf
    C:\Windows\Prefetch\WINDOWSDESKTOP-RUNTIME-9.0.15-183F6755.pf
    C:\Windows\Prefetch\MSIEXEC.EXE-8FFB1633.pf
    C:\Windows\Prefetch\WINDOWSDESKTOP-RUNTIME-9.0.15-0A5C0E8C.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA8.pf
    C:\Windows\Prefetch\SYSPROXY.EXE-C48DA863.pf
    C:\Windows\Prefetch\UPDATER.EXE-0DC7AD9A.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAC7.pf
    C:\Windows\Prefetch\MICROSOFTEDGEUPDATE.EXE-7A595326.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FAA.pf
    C:\Windows\Prefetch\WMIC.EXE-98223A30.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E392.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E389.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E395.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E38A.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E393.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E38C.pf
    C:\Windows\Prefetch\***-VERGE.EXE-4E2CA448.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E388.pf
    C:\Windows\Prefetch\VERGE-******.EXE-FE5C24BE.pf
    C:\Windows\Prefetch\DOTNET-RUNTIME-9.0.15-WIN-X64-E84B1723.pf
    C:\Windows\Prefetch\DOTNET-RUNTIME-9.0.15-WIN-X64-D4143E4E.pf
    C:\Windows\Prefetch\DOTNET-RUNTIME-9.0.15-WIN-X64-7B6951F2.pf
    C:\Windows\Prefetch\DLLHOST.EXE-A6047969.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25F9B.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA3.pf
    C:\Windows\Prefetch\SOGOUSMARTASSISTANT.EXE-ACA6B365.pf
    C:\Windows\Prefetch\EXPLORER.EXE-D5E97654.pf
    C:\Windows\Prefetch\RUNDLL32.EXE-BE8830B6.pf
    C:\Windows\Prefetch\010EDITOR.EXE-EC136944.pf
    C:\Windows\Prefetch\010 EDITOR 12.0.1.EXE-C08425C3.pf
    C:\Windows\Prefetch\SGTOOL.EXE-BD6DF1C1.pf
    C:\Windows\Prefetch\LECMD.EXE-9DCF2895.pf
    C:\Windows\Prefetch\PWSH.EXE-205A9CCD.pf
    C:\Windows\Prefetch\OPENCONSOLE.EXE-DFBCE1A6.pf
    C:\Windows\Prefetch\WINDOWSTERMINAL.EXE-C3DF2830.pf
    C:\Windows\Prefetch\WINHEX64.EXE-23B0AE5B.pf
    C:\Windows\Prefetch\WINHEX V20.1 SR-3_X86_X64中文解锁-D782DCF0.pf
    C:\Windows\Prefetch\POWERSHELL.EXE-AE8EDC9B.pf
    C:\Windows\Prefetch\CODESETUP-STABLE-41DD792B5E65-B56A7FB3.pf
    C:\Windows\Prefetch\CODESETUP-STABLE-41DD792B5E65-02D6B685.pf
    C:\Windows\Prefetch\ICACLS.EXE-CCAC2A58.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-E0CFC479.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FF0.pf
    C:\Windows\Prefetch\TASKLIST.EXE-F58BCF08.pf
    C:\Windows\Prefetch\EVERYTHING.EXE-5F5BA4E5.pf
    C:\Windows\Prefetch\WSL.EXE-1B26B53B.pf
    C:\Windows\Prefetch\WSL.EXE-56DBE6B7.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FE7.pf
    C:\Windows\Prefetch\PING.EXE-4A8A6853.pf
    C:\Windows\Prefetch\VSCE-SIGN.EXE-BD4E207C.pf
    C:\Windows\Prefetch\GIT.EXE-0C4E3743.pf
    C:\Windows\Prefetch\SH.EXE-7381C09F.pf
    C:\Windows\Prefetch\SSH.EXE-564360CE.pf
    C:\Windows\Prefetch\RG.EXE-53CA56B0.pf
    C:\Windows\Prefetch\AI-AGENT.EXE-7D2ADB0E.pf
    C:\Windows\Prefetch\CKG_SERVER_WINDOWS_X64.EXE-4F1F3D7E.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FE6.pf
    C:\Windows\Prefetch\REG.EXE-A93A1343.pf
    C:\Windows\Prefetch\CONHOST.EXE-0C6456FB.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FF4.pf
    C:\Windows\Prefetch\CHCP.COM-2CF9B15C.pf
    C:\Windows\Prefetch\FINDSTR.EXE-1BC2295F.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FF1.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FE8.pf
    C:\Windows\Prefetch\CODE.EXE-26D08FEA.pf
    C:\Windows\Prefetch\CODE-TUNNEL.EXE-C810D95E.pf
    C:\Windows\Prefetch\INNO_UPDATER.EXE-1C68E22C.pf
    C:\Windows\Prefetch\TYPORA.EXE-AC0AF3CD.pf
    C:\Windows\Prefetch\TYPORA.EXE-AC0AF3D3.pf
    C:\Windows\Prefetch\TYPORA.EXE-AC0AF3CC.pf
    C:\Windows\Prefetch\TYPORA.EXE-AC0AF3CB.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-CDFA4B30.pf
    C:\Windows\Prefetch\DLLHOST.EXE-3586E1D7.pf
    C:\Windows\Prefetch\DLLHOST.EXE-8BE7E5AA.pf
    C:\Windows\Prefetch\DLLHOST.EXE-62AAA158.pf
    C:\Windows\Prefetch\SVCHOST.EXE-3E1BF353.pf
    C:\Windows\Prefetch\SVCHOST.EXE-BE3D0421.pf
    C:\Windows\Prefetch\WMIPRVSE.EXE-E8B8DD29.pf
    C:\Windows\Prefetch\LGHUB.EXE-1A9EA8C1.pf
    C:\Windows\Prefetch\LGHUB.EXE-1A9EA8CA.pf
    C:\Windows\Prefetch\LGHUB.EXE-1A9EA8BF.pf
    C:\Windows\Prefetch\LGHUB_AGENT.EXE-3D7B6E15.pf
    C:\Windows\Prefetch\SECURITYHEALTHHOST.EXE-114869E6.pf
    C:\Windows\Prefetch\WSCTRL.EXE-4FC45A0B.pf
    C:\Windows\Prefetch\REGSVR32.EXE-B31EC963.pf
    C:\Windows\Prefetch\REGSVR32.EXE-03D3FB87.pf
    C:\Windows\Prefetch\TASKMGR.EXE-4C8500BA.pf
    C:\Windows\Prefetch\PROMECEFPLUGINHOST.EXE-5FD246B5.pf
    C:\Windows\Prefetch\SVCHOST.EXE-117C4441.pf
    C:\Windows\Prefetch\SGDOWNLOAD.EXE-846F820B.pf
    C:\Windows\Prefetch\WERFAULT.EXE-661188F3.pf
    C:\Windows\Prefetch\PINYINUP.EXE-27297D65.pf
    C:\Windows\Prefetch\USERNETSCHEDULE.EXE-EA7AC9D8.pf
    C:\Windows\Prefetch\WIDGETSERVICE.EXE-4FAFA32D.pf
    C:\Windows\Prefetch\SVCHOST.EXE-59780EBF.pf
    C:\Windows\Prefetch\THUMBCACHE_VIEWER.EXE-EC35C9B2.pf
    C:\Windows\Prefetch\KSOMISC.EXE-22FA3E3A.pf
    C:\Windows\Prefetch\PROMECEFPLUGINHOST.EXE-5FD246BB.pf
    C:\Windows\Prefetch\KWINAPPINSTALLER.EXE-485A8CC5.pf
    C:\Windows\Prefetch\WPSCLOUDSVR.EXE-88718631.pf
    C:\Windows\Prefetch\RUNDLL32.EXE-75313621.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA6.pf
    C:\Windows\Prefetch\COMPPKGSRV.EXE-4780F0C1.pf
    C:\Windows\Prefetch\SVCHOST.EXE-AA89143F.pf
    C:\Windows\Prefetch\USEROOBEBROKER.EXE-65584ADF.pf
    C:\Windows\Prefetch\SVCHOST.EXE-4E79CC0D.pf
    C:\Windows\Prefetch\APPACTIONS.EXE-B6BBE7C1.pf
    C:\Windows\Prefetch\INTELSOFTWAREASSETMANAGERSERV-E447FB76.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B926.pf
    C:\Windows\Prefetch\NETSTAT.EXE-8544F4D0.pf
    C:\Windows\Prefetch\W32TM.EXE-C4E0F88E.pf
    C:\Windows\Prefetch\SVCHOST.EXE-135302C9.pf
    C:\Windows\Prefetch\SVCHOST.EXE-A55FF775.pf
    C:\Windows\Prefetch\WIFITASK.EXE-4F6EC067.pf
    C:\Windows\Prefetch\FINDSTR.EXE-5986D423.pf
    C:\Windows\Prefetch\OFFICECLICKTORUN.EXE-F5CCE208.pf
    C:\Windows\Prefetch\SCHTASKS.EXE-8B6144A9.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B933.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-101C44CE.pf
    C:\Windows\Prefetch\ESRV.EXE-8C6FE54F.pf
    C:\Windows\Prefetch\VMWARE-VMX.EXE-4C9671BE.pf
    C:\Windows\Prefetch\ESRV_SVC.EXE-23809E5E.pf
    C:\Windows\Prefetch\SC.EXE-6C4D4413.pf
    C:\Windows\Prefetch\TASK.EXE-9EE3957E.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-1C01547B.pf
    C:\Windows\Prefetch\WMIADAP.EXE-BB21CD77.pf
    C:\Windows\Prefetch\MKSSANDBOX.EXE-B56A2056.pf
    C:\Windows\Prefetch\VMWARE.EXE-CC74D380.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA4.pf
    C:\Windows\Prefetch\VMWARE-TRAY.EXE-532C1CB9.pf
    C:\Windows\Prefetch\DLLHOST.EXE-6F625E57.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B92F.pf
    C:\Windows\Prefetch\MPCMDRUN.EXE-FD2C4953.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAD0.pf
    C:\Windows\Prefetch\CRASHPAD_HANDLER.EXE-D7573160.pf
    C:\Windows\Prefetch\UTILITY.EXE-3C7831DA.pf
    C:\Windows\Prefetch\FILESYNCHELPER.EXE-0EB65E48.pf
    C:\Windows\Prefetch\RUNONCE.EXE-FB4EF753.pf
    C:\Windows\Prefetch\DBINSTALLER.EXE-FF76AF1C.pf
    C:\Windows\Prefetch\FILECOAUTH.EXE-4E06244B.pf
    C:\Windows\Prefetch\TRANSLUCENTTB.EXE-4DBBC472.pf
    C:\Windows\Prefetch\TOBII.EYETRACKING.PORTAL.WPF.-0B7498C9.pf
    C:\Windows\Prefetch\RUNDLL32.EXE-4809C753.pf
    C:\Windows\Prefetch\LGHUB_SYSTEM_TRAY.EXE-0ACA82D6.pf
    C:\Windows\Prefetch\CTFMON.EXE-795F8130.pf
    C:\Windows\Prefetch\ONEDRIVE.EXE-B657FF91.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-4551A062.pf
    C:\Windows\Prefetch\WSCTRLSVC.EXE-DE574A9F.pf
    C:\Windows\Prefetch\NETCFGNOTIFYOBJECTHOST.EXE-683437CE.pf
    C:\Windows\Prefetch\HIPSTRAY.EXE-00FA126C.pf
    C:\Windows\Prefetch\DLLHOST.EXE-ECDCED3C.pf
    C:\Windows\Prefetch\SVCHOST.EXE-84F32335.pf
    C:\Windows\Prefetch\LEGIONZONE.EXE-E2CE41BF.pf
    C:\Windows\Prefetch\SOGOUCLOUD.EXE-2608C54D.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-99954090.pf
    C:\Windows\Prefetch\CRASHLOG_EXTRACTOR.EXE-FAD1837D.pf
    C:\Windows\Prefetch\DRVINST.EXE-39D9EAC7.pf
    C:\Windows\Prefetch\SVCHOST.EXE-764FA25C.pf
    C:\Windows\Prefetch\SVCHOST.EXE-EBBF67E6.pf
    C:\Windows\Prefetch\SVCHOST.EXE-41084AF7.pf
    C:\Windows\Prefetch\SVCHOST.EXE-C38EF8DD.pf
    C:\Windows\Prefetch\GOOGLEUPDATE.EXE-0E1E7B82.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA7.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25F9C.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25FA5.pf
    C:\Windows\Prefetch\SVCHOST.EXE-B1A15682.pf
    C:\Windows\Prefetch\SVCHOST.EXE-1CC6A223.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25F9E.pf
    C:\Windows\Prefetch\RTKAUDUSERVICE64.EXE-15B9B415.pf
    C:\Windows\Prefetch\ELEVATION_SERVICE.EXE-515C30D6.pf
    C:\Windows\Prefetch\MSEDGE.EXE-37D25F9A.pf
    C:\Windows\Prefetch\LENOVOOOBEPLUGIN.EXE-600E945F.pf
    C:\Windows\Prefetch\APPPROVISIONINGPLUGIN.EXE-3474FF9F.pf
    C:\Windows\Prefetch\MESSAGINGPLUGIN.EXE-B27966ED.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B930.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAC8.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CACA.pf
    C:\Windows\Prefetch\SVCHOST.EXE-3FD4846C.pf
    C:\Windows\Prefetch\SECURITYHEALTHSERVICE.EXE-91B5FB98.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-216E3EDB.pf
    C:\Windows\Prefetch\SECURITYHEALTHSYSTRAY.EXE-E527A4AE.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAC6.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-4C6E0A75.pf
    C:\Windows\Prefetch\SVCHOST.EXE-E5CD0034.pf
    C:\Windows\Prefetch\SVCHOST.EXE-DF14C859.pf
    C:\Windows\Prefetch\SVCHOST.EXE-62105D0D.pf
    C:\Windows\Prefetch\WLANEXT.EXE-BFF495D4.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-81478687.pf
    C:\Windows\Prefetch\APPLICATIONFRAMEHOST.EXE-8CE9A1EE.pf
    C:\Windows\Prefetch\NAHIMIC3.EXE-89098859.pf
    C:\Windows\Prefetch\DSATRAY.EXE-7E070FC6.pf
    C:\Windows\Prefetch\CHSIME.EXE-450F47D5.pf
    C:\Windows\Prefetch\DASHOST.EXE-4B84F273.pf
    C:\Windows\Prefetch\DLLHOST.EXE-F7FC6593.pf
    C:\Windows\Prefetch\ISGPET.EXE-7A485A80.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-E6FD6E45.pf
    C:\Windows\Prefetch\LEGIONZONE.EXE-E2CE41BD.pf
    C:\Windows\Prefetch\CRASHPAD_HANDLER.EXE-7B22C0DD.pf
    C:\Windows\Prefetch\PHONEEXPERIENCEHOST.EXE-D9EB86FD.pf
    C:\Windows\Prefetch\OAWRAPPER.EXE-0459780F.pf
    C:\Windows\Prefetch\WMIPRVSE.EXE-39F97B2D.pf
    C:\Windows\Prefetch\POWERCFG.EXE-954C9186.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-2A956FC5.pf
    C:\Windows\Prefetch\SVCHOST.EXE-D5481872.pf
    C:\Windows\Prefetch\WIDGETS.EXE-359824DE.pf
    C:\Windows\Prefetch\LOGONUI.EXE-F639BD7E.pf
    C:\Windows\Prefetch\SMARTENGINEHOSTN64.EXE-348CC228.pf
    C:\Windows\Prefetch\SMARTENGINEHOST64.EXE-ABC76A1F.pf
    C:\Windows\Prefetch\UNSECAPP.EXE-72B9DDB3.pf
    C:\Windows\Prefetch\SEREGISTERDYNAMIC.EXE-6B57A943.pf
    C:\Windows\Prefetch\SEWORKER.EXE-16AFFE53.pf
    C:\Windows\Prefetch\QQ.EXE-E597AF72.pf
    C:\Windows\Prefetch\BACKGROUNDTASKHOST.EXE-AE93FED8.pf
    C:\Windows\Prefetch\SPATIALAUDIOLICENSESRV.EXE-4032171B.pf
    C:\Windows\Prefetch\UPDATESELF.EXE-5EB2717E.pf
    C:\Windows\Prefetch\SECTASK.EXE-F382F486.pf
    C:\Windows\Prefetch\LZSTRATEGY.EXE-0FC2F9E8.pf
    C:\Windows\Prefetch\LZUPDATE.EXE-C631B670.pf
    C:\Windows\Prefetch\SVCHOST.EXE-D8C907E1.pf
    C:\Windows\Prefetch\IDENTITY_HELPER.EXE-77BBFCF1.pf
    C:\Windows\Prefetch\VOL.EXE-4AA2CF3A.pf
    C:\Windows\Prefetch\PYTHON.EXE-D8BAB8F7.pf
    C:\Windows\Prefetch\PIPX.EXE-3B6C4593.pf
    C:\Windows\Prefetch\PYTHON3.11.EXE-49796F51.pf
    C:\Windows\Prefetch\PYTHON.EXE-D556ACC8.pf
    C:\Windows\Prefetch\SEARCHFILTERHOST.EXE-44162447.pf
    C:\Windows\Prefetch\PYTHON.EXE-AC8B2210.pf
    C:\Windows\Prefetch\DATAEXCHANGEHOST.EXE-8B66795C.pf
    C:\Windows\Prefetch\HIPSMAIN.EXE-E864551D.pf
    C:\Windows\Prefetch\NOTEPAD.EXE-E06A5D65.pf
    C:\Windows\Prefetch\STEAM++.ACCELERATOR.EXE-92B5CC0E.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-66252955.pf
    C:\Windows\Prefetch\STEAM++.EXE-C9B24EE9.pf
    C:\Windows\Prefetch\WPS.EXE-F9DF059E.pf
    C:\Windows\Prefetch\EMDRIVERASSIST.EXE-DB923C64.pf
    C:\Windows\Prefetch\PECMD.EXE-4EFB1BFD.pf
    C:\Windows\Prefetch\DOTNET-RUNTIME-9.0.15-WIN-X64-5501E6E2.pf
    C:\Windows\Prefetch\DOTNET-RUNTIME-9.0.15-WIN-X64-9583CB58.pf
    C:\Windows\Prefetch\WINPREFETCHVIEW.EXE-77AAA18A.pf
    C:\Windows\Prefetch\BUGREPORT.EXE-702BA9CA.pf
    C:\Windows\Prefetch\HIPSDAEMON.EXE-B862DB38.pf
    C:\Windows\Prefetch\HRUPDATE.EXE-B864CAD9.pf
    C:\Windows\Prefetch\QQ.EXE-E597AF7B.pf
    C:\Windows\Prefetch\CRASHPAD_HANDLER.EXE-69E6112C.pf
    C:\Windows\Prefetch\QQ.EXE-E597AF7C.pf
    C:\Windows\Prefetch\QQ.EXE-E597AF73.pf
    C:\Windows\Prefetch\SVCHOST.EXE-C88A2A3B.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B927.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-BDC2B925.pf
    C:\Windows\Prefetch\TOBII.EYETRACKING.BACKGROUNDI-58398013.pf
    C:\Windows\Prefetch\WPP.EXE-FE4BE2C8.pf
    C:\Windows\Prefetch\SVCHOST.EXE-CAEF0A6A.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAD1.pf
    C:\Windows\Prefetch\MONOTIFICATIONUX.EXE-62024999.pf
    C:\Windows\Prefetch\NAHIMICNOTIFSYS.EXE-47C2A80E.pf
    C:\Windows\Prefetch\NHNOTIFSYS.EXE-AB06D94E.pf
    C:\Windows\Prefetch\TEXTINPUTHOST.EXE-F74F7699.pf
    C:\Windows\Prefetch\SHELLEXPERIENCEHOST.EXE-E14F1772.pf
    C:\Windows\Prefetch\GAHIGHLIGHT.EXE-757B6BAB.pf
    C:\Windows\Prefetch\LSF.EXE-A432078B.pf
    C:\Windows\Prefetch\GACONTROLLER.EXE-FC0283D4.pf
    C:\Windows\Prefetch\NVNGX_UPDATE.EXE-8BD70E87.pf
    C:\Windows\Prefetch\LZTRAY.EXE-AE8E3451.pf
    C:\Windows\Prefetch\SVCHOST.EXE-EA9BB143.pf
    C:\Windows\Prefetch\GAMEINPUTREDISTSERVICE.EXE-88192427.pf
    C:\Windows\Prefetch\IPF_HELPER.EXE-1FA8C74D.pf
    C:\Windows\Prefetch\WUAUCLTCORE.EXE-07BDE0CF.pf
    C:\Windows\Prefetch\AM_DELTA_PATCH_1.449.177.0.EX-354A5B75.pf
    C:\Windows\Prefetch\MPSIGSTUB.EXE-5D0450B3.pf
    C:\Windows\Prefetch\DISMHOST.EXE-9ED88D89.pf
    C:\Windows\Prefetch\NGENTASK.EXE-0E6CEC17.pf
    C:\Windows\Prefetch\NGENTASK.EXE-849BFD75.pf
    C:\Windows\Prefetch\MSCORSVW.EXE-8CE1A322.pf
    C:\Windows\Prefetch\MSCORSVW.EXE-16B291C4.pf
    C:\Windows\Prefetch\SVCHOST.EXE-4B98D760.pf
    C:\Windows\Prefetch\VSSVC.EXE-6C8F0C66.pf
    C:\Windows\Prefetch\SVCHOST.EXE-77C41F85.pf
    C:\Windows\Prefetch\SVCHOST.EXE-529F9AC1.pf
    C:\Windows\Prefetch\NGEN.EXE-4A8DA13E.pf
    C:\Windows\Prefetch\NGEN.EXE-734C6620.pf
    C:\Windows\Prefetch\SVCHOST.EXE-6A4A44E7.pf
    C:\Windows\Prefetch\DEFRAG.EXE-3D9E8D72.pf
    C:\Windows\Prefetch\SOGOUIMEBROKER.EXE-F8430F8F.pf
    C:\Windows\Prefetch\SGSMARTASSISTANT.EXE-EEBB1BD8.pf
    C:\Windows\Prefetch\RUNTIMEBROKER.EXE-8FDA1842.pf
    C:\Windows\Prefetch\SOGOUTOOLKITS.EXE-004EBF7F.pf
    C:\Windows\Prefetch\SOGOUEXE.EXE-1DA79750.pf
    C:\Windows\Prefetch\TIMEOUT.EXE-7D53A680.pf
    C:\Windows\Prefetch\CHOICE.EXE-78DC61EC.pf
    C:\Windows\Prefetch\POWERTOYS.SHORTCUTGUIDE.EXE-D225D64B.pf
    C:\Windows\Prefetch\SHELLHOST.EXE-C0CC6E3B.pf
    C:\Windows\Prefetch\SVCHOST.EXE-44191FB8.pf
    C:\Windows\Prefetch\HEADLESSCOMMAND.EXE-455FE04C.pf
    C:\Windows\Prefetch\DLLHOST.EXE-95A95592.pf
    C:\Windows\Prefetch\PHOTOLAUNCH.EXE-BC0A459E.pf
    C:\Windows\Prefetch\KAIDEPLOYSERVER.EXE-E1024042.pf
    C:\Windows\Prefetch\POWERTOYS.SVGTHUMBNAILPROVIDE-0CDA7C44.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-A65B0984.pf
    C:\Windows\Prefetch\QMBROWSER.EXE-B7A94F05.pf
    C:\Windows\Prefetch\QMWEIYUN.EXE-BF7EC45F.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-A65B097C.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-A65B0985.pf
    C:\Windows\Prefetch\WECHATAPPEX.EXE-A65B097A.pf
    C:\Windows\Prefetch\QQMUSIC.EXE-B4B27E3B.pf
    C:\Windows\Prefetch\BACKGROUNDTRANSFERHOST.EXE-E7B7D877.pf
    C:\Windows\Prefetch\SOGOUWIN10SETUP.EXE-D43AE4D7.pf
    C:\Windows\Prefetch\LEGIONZONE.EXE-E2CE41C5.pf
    C:\Windows\Prefetch\SVCHOST.EXE-6493017E.pf
    C:\Windows\Prefetch\SEARCHINDEXER.EXE-1CF42BC6.pf
    C:\Windows\Prefetch\ADDINUTIL.EXE-4E6085D4.pf
    C:\Windows\Prefetch\SVCHOST.EXE-2A35E6EF.pf
    C:\Windows\Prefetch\SRTASKS.EXE-3C9D2EEC.pf
    C:\Windows\Prefetch\INTEGRATOR.EXE-873C4A60.pf
    C:\Windows\Prefetch\WEVTUTIL.EXE-1E154F39.pf
    C:\Windows\Prefetch\VC_REDIST.X86.EXE-6CF71C86.pf
    C:\Windows\Prefetch\VC_REDIST.X86.EXE-A97C06D4.pf
    C:\Windows\Prefetch\VC_REDIST.X86.EXE-DDA314B9.pf
    C:\Windows\Prefetch\DLLHOST.EXE-D200FEC3.pf
    C:\Windows\Prefetch\VC_REDIST.X64.EXE-EC12BD35.pf
    C:\Windows\Prefetch\VC_REDIST.X64.EXE-0A2CEA61.pf
    C:\Windows\Prefetch\VC_REDIST.X64.EXE-4A06850E.pf
    C:\Windows\Prefetch\APPVSHNOTIFY.EXE-FB3C42F5.pf
    C:\Windows\Prefetch\PERFBOOST.EXE-D7CAB4F4.pf
    C:\Windows\Prefetch\OFFICEC2RCLIENT.EXE-6DB2EFE8.pf
    C:\Windows\Prefetch\OFFICECLICKTORUN.EXE-8E44BF82.pf
    C:\Windows\Prefetch\AM_DELTA.EXE-78CA83B0.pf
    C:\Windows\Prefetch\MICROSOFTEDGE_X64_147.0.3912.-48781018.pf
    C:\Windows\Prefetch\AM_DELTA_PATCH_1.449.148.0.EX-325B7363.pf
    C:\Windows\Prefetch\SVCHOST.EXE-B18C213B.pf
    C:\Windows\Prefetch\WAASMEDICAGENT.EXE-21F161ED.pf
    C:\Windows\Prefetch\PROMECEFPLUGINHOST.EXE-ECAB54F3.pf
    C:\Windows\Prefetch\IDENTITY_HELPER.EXE-B674FE2A.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-0608E396.pf
    C:\Windows\Prefetch\SVCHOST.EXE-5F87ABED.pf
    C:\Windows\Prefetch\ELEVATION_SERVICE.EXE-587C2F7F.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-99954094.pf
    C:\Windows\Prefetch\SMARTSCREEN.EXE-EACC1250.pf
    C:\Windows\Prefetch\NVOAWRAPPERCACHE.EXE-3E233137.pf
    C:\Windows\Prefetch\DLLHOST.EXE-A1BF1D3B.pf
    C:\Windows\Prefetch\PICKERHOST.EXE-DE4B8E61.pf
    C:\Windows\Prefetch\OPENWITH.EXE-DC0607AF.pf
    C:\Windows\Prefetch\WPS.EXE-AE1E0AE5.pf
    C:\Windows\Prefetch\WPSCLOUDSVR.EXE-BB6B273F.pf
    C:\Windows\Prefetch\KSOMISC.EXE-15E0AF08.pf
    C:\Windows\Prefetch\WPSUPDATE.EXE-3475D64C.pf
    C:\Windows\Prefetch\DIFF_2052_12.1.0.25225_UNIFIE-BAE0BEBD.pf
    C:\Windows\Prefetch\APPLYPATCH.EXE-DCA9125A.pf
    C:\Windows\Prefetch\UPDATESELF.EXE-54C98715.pf
    C:\Windows\Prefetch\PROMECEFPLUGINHOST.EXE-ECAB54F9.pf
    C:\Windows\Prefetch\SDXHELPER.EXE-832215EB.pf
    C:\Windows\Prefetch\ONEDRIVE.SYNC.SERVICE.EXE-5A853A65.pf
    C:\Windows\Prefetch\FNHOTKEYCAPSLKNUMLK.EXE-88C5D305.pf
    C:\Windows\Prefetch\DSAARCDETECT64.EXE-F938BC19.pf
    C:\Windows\Prefetch\BACKGROUNDTASKHOST.EXE-51333CCD.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAD4.pf
    C:\Windows\Prefetch\UPDATESELF.EXE-770B433C.pf
    C:\Windows\Prefetch\WPS.EXE-DD1FBBC0.pf
    C:\Windows\Prefetch\WPP.EXE-741CDB56.pf
    C:\Windows\Prefetch\KAIDEPLOYSERVER.EXE-46AD08BB.pf
    C:\Windows\Prefetch\DLLHOST.EXE-236AEA34.pf
    C:\Windows\Prefetch\MATLABWEBUI.EXE-775B3DCA.pf
    C:\Windows\Prefetch\PHOTOLAUNCH.EXE-EF03E6AC.pf
    C:\Windows\Prefetch\KWINAPPINSTALLER.EXE-EB7BCEE3.pf
    C:\Windows\Prefetch\MATLABWEBUI.EXE-775B3DCB.pf
    C:\Windows\Prefetch\MWDOCSEARCH.EXE-2EB1D6E8.pf
    C:\Windows\Prefetch\MATLABWEBUI.EXE-775B3DD1.pf
    C:\Windows\Prefetch\MATLAB.EXE-9FFBB125.pf
    C:\Windows\Prefetch\MATLAB.EXE-87B70EE9.pf
    C:\Windows\Prefetch\LGHUB.EXE-1A9EA8C0.pf
    C:\Windows\Prefetch\LGHUB_UPDATER.EXE-3F187D8B.pf
    C:\Windows\Prefetch\LGHUB_SOFTWARE_MANAGER.EXE-80572FD7.pf
    C:\Windows\Prefetch\SVCHOST.EXE-F54618D1.pf
    C:\Windows\Prefetch\SYSTEMSETTINGS.EXE-AD6D6913.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-99954087.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-99954093.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-9995408A.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-99954086.pf
    C:\Windows\Prefetch\SEARCHHOST.EXE-00D3CA27.pf
    C:\Windows\Prefetch\SVCHOST.EXE-39447866.pf
    C:\Windows\Prefetch\NVCONTAINER.EXE-537D289C.pf
    C:\Windows\Prefetch\RUNDLL32.EXE-99051BEA.pf
    C:\Windows\Prefetch\SVCHOST.EXE-FC42C687.pf
    C:\Windows\Prefetch\ONEAPP.IGCC.WINSERVICE.LACE.E-D27E39B3.pf
    C:\Windows\Prefetch\MICROSOFTEDGE_X64_147.0.3912.-BA37AEAA.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F291D.pf
    C:\Windows\Prefetch\WERFAULT.EXE-155C56CF.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-AFDFE269.pf
    C:\Windows\Prefetch\MIPCAUDIO.EXE-B632AF35.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F292A.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F291E.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F2928.pf
    C:\Windows\Prefetch\MISMARTSHAREHANDOFF.EXE-D73DA8FC.pf
    C:\Windows\Prefetch\云校.EXE-80BF724A.pf
    C:\Windows\Prefetch\MISCREENSHARE.EXE-544E00F3.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F2929.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F291F.pf
    C:\Windows\Prefetch\STEAMWEBHELPER.EXE-BD7F2921.pf
    C:\Windows\Prefetch\STEAMSERVICE.EXE-2A912AE7.pf
    C:\Windows\Prefetch\STEAM.EXE-745BA901.pf
    C:\Windows\Prefetch\VULKANDRIVERQUERY.EXE-00123ECF.pf
    C:\Windows\Prefetch\VULKANDRIVERQUERY64.EXE-5443B9C1.pf
    C:\Windows\Prefetch\GLDRIVERQUERY.EXE-47B4FD59.pf
    C:\Windows\Prefetch\GLDRIVERQUERY64.EXE-3CB309AB.pf
    C:\Windows\Prefetch\STEAMSYSINFO.EXE-12033F40.pf
    C:\Windows\Prefetch\STEAMERRORREPORTER.EXE-288AD7EA.pf
    C:\Windows\Prefetch\STEAMERRORREPORTER64.EXE-C7A7E42C.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-AFDFE273.pf
    C:\Windows\Prefetch\MICONT_SERVICE.EXE-8C4ABB48.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-AFDFE26A.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-AFDFE274.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-AFDFE26D.pf
    C:\Windows\Prefetch\PCCLIPBOARD.EXE-7D960C68.pf
    C:\Windows\Prefetch\XIAOMIPCMANAGER.EXE-323CC94F.pf
    C:\Windows\Prefetch\CXSTUDY.EXE-C9B9CAD2.pf
    C:\Windows\Prefetch\云校.EXE-80BF724B.pf
    C:\Windows\Prefetch\云校.EXE-80BF7251.pf
    C:\Windows\Prefetch\云校.EXE-80BF7249.pf
    C:\Windows\Prefetch\WPSPDF.EXE-2C4A716F.pf
    C:\Windows\Prefetch\WEBEXPERIENCEHOSTAPP.EXE-F683C5E2.pf
    C:\Windows\Prefetch\RUNDLL32.EXE-3A77E146.pf
    C:\Windows\Prefetch\SVCHOST.EXE-C35F28CB.pf
    C:\Windows\Prefetch\AM_DELTA_PATCH_1.449.142.0.EX-2C5E1825.pf
    C:\Windows\Prefetch\MSEDGE_PROXY.EXE-3C903F07.pf
    C:\Windows\Prefetch\NPFINSTALL.EXE-5577DC1C.pf
    C:\Windows\Prefetch\UNINSTALL.EXE-E684504F.pf
    C:\Windows\Prefetch\NPCAP-1.87.EXE-1A7A126E.pf
    C:\Windows\Prefetch\STARTMENUEXPERIENCEHOST.EXE-49335D03.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-436C3F67.pf
    C:\Windows\Prefetch\CLEANMGR.EXE-1282D612.pf
    C:\Windows\Prefetch\KSCMAIN.EXE-A461A313.pf
    C:\Windows\Prefetch\SHELLEXPERIENCEHOST.EXE-2832B906.pf
    C:\Windows\Prefetch\MMC.EXE-F7E389B3.pf
    C:\Windows\Prefetch\MICROSOFT.MEDIA.PLAYER.EXE-2DE169A0.pf
    C:\Windows\Prefetch\OPENWITH.EXE-8B50D58B.pf
    C:\Windows\Prefetch\WINDOWSCAMERA.EXE-6337A141.pf
    C:\Windows\Prefetch\MMC.EXE-0100FE1F.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-4B3E064C.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-4B3E0656.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-4B3E064B.pf
    C:\Windows\Prefetch\LOCKAPP.EXE-464513A3.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-7BC02878.pf
    C:\Windows\Prefetch\MSEDGEWEBVIEW2.EXE-7BC02882.pf
    C:\Windows\Prefetch\M365COPILOT.EXE-18E2253C.pf
    C:\Windows\Prefetch\DLLHOST.EXE-F6E270D2.pf
    C:\Windows\Prefetch\QUARK_CLOUD_DRIVE.EXE-A3E2A23B.pf
    C:\Windows\Prefetch\GAMEBAR.EXE-B5DFEA24.pf
    C:\Windows\Prefetch\MIUSERLOGON.EXE-8612BED5.pf
    C:\Windows\Prefetch\MISERVICEPRIVACY.EXE-5F40F21A.pf
    C:\Windows\Prefetch\VC_REDIST.X86.EXE-3242EC65.pf
    C:\Windows\Prefetch\QUARKCLOUDDRIVEPC_V6.5.1.711_-BA5D14DC.pf
    C:\Windows\Prefetch\QUARKCLOUDDRIVEPC_V6.5.1.711_-0CB0A697.pf
    C:\Windows\Prefetch\QUARKCLOUDDRIVE.EXE-5235DC89.pf
    C:\Windows\Prefetch\CORE_ PACKAGED.EXE-7CBB95C8.pf
    C:\Windows\Prefetch\免机型验证小米电脑管家V4.3.0.1881.EXE-A37840BD.pf
    C:\Windows\Prefetch\REGEDIT.EXE-DAB4D60B.pf
    C:\Windows\Prefetch\NVDISPLAY.CONTAINER.EXE-6C87981A.pf
  3. 统计今天有多少个不同的程序被执行过
    4.20(今天)有305个程序被执行过
  4. 识别执行频率最高的时间段(如上午9-11点、下午2-4点等)
    执行频率最高的时间段为上午10时到下午5时。
    进阶要求:
  • 使用 PECmd.exe(Eric Zimmerman工具)解析一个Prefetch文件,提取准确的执行时间戳
    我选择的是git.exe
    解析结果如下所示:
PS E:\2026年下学期文件\数字取证\PECmd> .\Pecmd -f C:\Windows\Prefetch\GIT.EXE-0D29D03D.pf
PECmd version 1.5.1.0

Author: Eric Zimmerman (saericzimmerman@gmail.com)
https://github.com/EricZimmerman/PECmd

Command line: -f C:\Windows\Prefetch\GIT.EXE-0D29D03D.pf

Warning: Administrator privileges not found!

Keywords: temp, tmp

Processing C:\Windows\Prefetch\GIT.EXE-0D29D03D.pf

Created on: 2026-04-20 07:55:51
Modified on: 2026-04-20 09:45:30
Last accessed on: 2026-04-20 09:50:59

Executable name: GIT.EXE
Hash: D29D03D
File size (bytes): 30,682
Version: null

Run count: 31
Last run: 2026-04-20 09:45:30
Other run times: 2026-04-20 09:36:56, 2026-04-20 09:30:53, 2026-04-20 09:30:53, 2026-04-20 09:22:06, 2026-04-20 09:19:44, 2026-04-20 09:13:54, 2026-04-20 09:10:08

Volume information:

#0: Name: \VOLUME{01d9b3a37bd97ecb-707be347} Serial: 707BE347 Created: 2023-07-11 02:57:52 Directories: 3 File references: 28
#1: Name: \VOLUME{01d9b3a41994810b-e0199f3d} Serial: E0199F3D Created: 2023-07-11 03:02:16 Directories: 5 File references: 8

Directories referenced: 8

00: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS
01: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\APPPATCH
02: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32
03: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT
04: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\CMD
05: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\ETC
06: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\MINGW64
07: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\MINGW64\BIN

Files referenced: 28

00: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\NTDLL.DLL
01: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\L_INTL.NLS
02: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\CMD\GIT-LFS.EXE
03: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\KERNEL32.DLL
04: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\KERNELBASE.DLL
05: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\LOCALE.NLS
06: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\APPHELP.DLL
07: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\APPPATCH\01DCCDAF360504C2.SYSMAIN.SDB
08: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\MSVCRT.DLL
09: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\SHELL32.DLL
10: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\MSVCP_WIN.DLL
11: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\UCRTBASE.DLL
12: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\USER32.DLL
13: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\WIN32U.DLL
14: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\GDI32.DLL
15: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\GDI32FULL.DLL
16: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\WINTYPES.DLL
17: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\COMBASE.DLL
18: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\RPCRT4.DLL
19: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\SHLWAPI.DLL
20: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\WINDOWS.STORAGE.DLL
21: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\ADVAPI32.DLL
22: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\SECHOST.DLL
23: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\IMM32.DLL
24: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\ETC\GIT-BASH.CONFIG
25: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\SHCORE.DLL
26: \VOLUME{01d9b3a41994810b-e0199f3d}\GIT\MINGW64\BIN\GIT.EXE (Executable: True)
27: \VOLUME{01d9b3a37bd97ecb-707be347}\WINDOWS\SYSTEM32\CONHOST.EXE


---------- Processed C:\Windows\Prefetch\GIT.EXE-0D29D03D.pf in 0.13594110 seconds ----------
  • 对比文件系统时间戳与Prefetch内部记录的时间差异
    文件系统时间戳显示上次修改和访问时间均为今天的17:45,而解析结果显示为今天上午9:45,原因是我之前在解析之前对所有Prefetch文件进行了拷贝操作。
    思考问题:
  • Prefetch文件中的时间戳与文件系统时间戳(创建/修改/访问)有何区别?
    Prefetch文件内部时间戳:记录的是应用程序本身的执行历史,包括最近8次(Windows 10/11)的启动时间和关闭时间。这些时间戳被嵌入在.pf文件的数据结构中,用于优化启动顺序。
    文件系统时间戳:指的是Prefetch文件本身(即那个.pf文件)在磁盘上的元数据,包括它的创建时间、最后修改时间和最后访问时间。例如,一个.pf文件的“修改时间”通常是它最后一次被更新(即记录新的程序运行信息)的时间。
    简单来说,Prefetch内部时间戳是关于程序运行的日记,而文件系统时间戳是关于日记本文件的档案信息。
  • 为什么同一个程序可能有多个不同哈希值的Prefetch文件?
    同一个程序(如code.exe, svchost.exe)出现多个不同哈希值的Prefetch文件,主要由以下原因导致:
  • 不同执行路径:这是最常见的原因。哈希值根据可执行文件的完整路径计算。如果程序被安装在不同位置(例如,一个在C盘,一个在D盘),或通过不同快捷方式指向不同路径,就会生成不同的哈希。
  • 命令行参数差异:对于svchost.exe, mmc.exe, rundll32.exe等系统程序,其启动时使用的命令行参数也会被纳入哈希计算。不同的参数意味着不同的任务或服务,因此需要独立的Prefetch记录。
  • 不同用户运行:在某些系统配置下,同一程序由不同用户账户运行时,也可能会生成独立的Prefetch文件。
  • 程序版本更新:程序升级后,如果其安装路径或内部结构发生变化,也可能导致生成新的Prefetch文件。
    这种机制确保了Windows能为同一程序在不同场景下的启动都提供准确的优化,而不是混淆所有情况。在系统分析或取证时,查看这些不同的.pf文件可以帮助了解该程序被以何种方式、从何处、执行过多少次。

阶段三:程序关联性分析

任务:通过Prefetch文件内容,分析程序间的依赖关系。

操作指引:

  1. 选择2个你最常用的应用程序(如浏览器、办公软件、解压工具等)对应的Prefetch文件
  2. 使用十六进制编辑器(如HxD)或Prefetch解析工具查看文件内容
  3. 提取Prefetch文件中记录的:
    • 执行次数(Run Count)
    • 最后执行时间
    • 依赖的DLL文件列表
    • 访问的文件路径

分析要求:

  • 绘制一张"程序-依赖文件"映射表
  • 找出被多个程序共同依赖的系统DLL
  • 检查是否有程序访问了非标准路径的文件

我选择的应用是微信和学习通,文件名分别是WEIXIN.EXE-307C58CD.pf和CXSTUDY.EXE-4C6E0A75.pf,分别使用PCEmd进行分析的结果如下:
img
img

根据您提供的两个Prefetch文件(CXSTUDY.EXE-4C6E0A75.pf 和 WEIXIN.EXE-307C58CD.pf)分析结果,已完成相关信息的提取与分析。

  1. 关键信息提取

a) 学习通 (CXSTUDY.EXE)

  • 执行次数 (Run Count): 244
  • 最后执行时间: 2026-04-20 07:24:32
  • 依赖的DLL文件列表:
    • NTDLL.DLL
    • WOW64.DLL
    • WOW64BASE.DLL
    • WOW64WIN.DLL
    • WOW64CON.DLL
    • KERNEL32.DLL
    • USER32.DLL
    • WOW64CPU.DLL
    • KERNELBASE.DLL
    • ADVAPI32.DLL
    • MSVCRT.DLL
    • SECHOST.DLL
    • RPCRT4.DLL
    • SHELL32.DLL
    • MSVCP_WIN.DLL
    • UCRTBASE.DLL
    • WIN32U.DLL
    • GDI32.DLL
    • GDI32FULL.DLL
    • WINTYPES.DLL
    • COMBASE.DLL
    • OLE32.DLL
    • COMCTL32.DLL
    • IMM32.DLL
    • OLEAUT32.DLL
    • UXTHEME.DLL
    • USERENV.DLL
    • SETUPAPI.DLL
    • APPHELP.DLL
    • PROPSYS.DLL
    • DWMAPI.DLL
    • CRYPTBASE.DLL
    • OLEACC.DLL
    • OLEACCRC.DLL
    • CLBCATQ.DLL
    • NTMARTA.DLL
    • VERSION.DLL
    • SHFOLDER.DLL
    • SHLWAPI.DLL
    • WINDOWS.STORAGE.DLL
    • SHCORE.DLL
    • KERNEL.APPCORE.DLL
    • BCRYPTPRIMITIVES.DLL
    • AUDIODEVPROPS2.DLL
    • WS2_32.DLL
    • CFGMGR32.DLL
  • 访问的文件路径 (摘要):
    • 可执行文件路径:
      • \VOLUME{...}\CXSTUDY\CXSTUDY.EXE
      • \VOLUME{...}\CXSTUDY\1.4.0\CXSTUDY.EXE
    • 系统文件路径: \VOLUME{...}\WINDOWS\* (大量系统DLL、NLS文件、SDB数据库)
    • 用户文件路径: \VOLUME{...}\USERS\ALEXANDER\APPDATA\LOCAL\TEMP\*.TMP (大量临时文件)
    • 程序数据路径: \VOLUME{...}\PROGRAMDATA\A-VOLUTE\A-VOLUTE.NAHIMIC\MODULES\SCHEDULED\AUDIODEVPROPS2.DLL

b) 微信 (WEIXIN.EXE)

  • 执行次数 (Run Count): 98
  • 最后执行时间: 2026-04-20 09:58:02
  • 依赖的DLL文件列表:
    • NTDLL.DLL
    • KERNEL32.DLL
    • KERNELBASE.DLL
    • APPHELP.DLL
    • DBGHELP.DLL
    • UCRTBASE.DLL
    • COMBASE.DLL
    • RPCRT4.DLL
    • OLEAUT32.DLL
    • MSVCP_WIN.DLL
    • OLE32.DLL
    • SHCORE.DLL
    • CRYPTBASE.DLL
    • ADVAPI32.DLL
    • MSVCRT.DLL
    • SECHOST.DLL
    • KERNEL.APPCORE.DLL
    • SHELL32.DLL
    • USER32.DLL
    • WIN32U.DLL
    • GDI32.DLL
    • GDI32FULL.DLL
    • WINTYPES.DLL
    • PSAPI.DLL
    • WINMM.DLL
    • IMM32.DLL
    • BCRYPTPRIMITIVES.DLL
    • VERSION.DLL
    • WINDOWS.STORAGE.DLL
    • SHLWAPI.DLL
    • USERENV.DLL
    • WS2_32.DLL
    • SECUR32.DLL
    • BCRYPT.DLL
    • SSPICLI.DLL
    • RPCSS.DLL
    • DXGI.DLL
    • POWRPROF.DLL
    • CRYPTSP.DLL
    • RSAENH.DLL
    • UMPDC.DLL
    • UXTHEME.DLL
    • AUDIODEVPROPS2.DLL
    • MSCTF.DLL
    • DXCORE.DLL
    • RESOURCEPOLICYCLIENT.DLL
    • DIRECTXDATABASEHELPER.DLL
    • CFGMGR32.DLL
    • D3D10WARP.DLL
    • TZRES.DLL
    • DSOUND.DLL
    • RESAMPLEDMO.DLL
    • WINMMBASE.DLL
    • MSDMO.DLL
    • OPENGL32.DLL
    • GLU32.DLL
    • NVDLISTX.DLL
    • IGD10IUMD64.DLL
    • NVLDUMDX.DLL
    • WXUTILITY.DLL
    • MMMOJO_64.DLL
    • LIBWXCODEC.DLL
    • LIBFFMPEG.DLL
    • WXPLAYER.DLL
    • LIBVLC.DLL
    • LIBVLCCORE.DLL
    • D3DCOMPILER_47.DLL
    • ... (大量VLC插件DLL,共计约160个文件引用,此处为部分核心DLL)
  • 访问的文件路径 (摘要):
    • 可执行文件路径: \VOLUME{...}\WECHAT\WEIXIN\WEIXIN.EXE
    • 系统文件路径: \VOLUME{...}\WINDOWS\* (大量系统DLL、驱动、SDB数据库、语言包)
    • 微信组件与插件路径: \VOLUME{...}\USERS\ALEXANDER\APPDATA\ROAMING\TENCENT\XWECHAT\XPLUGIN\PLUGINS\* (包含多个版本的插件,如WECHATUTILITY、WECHATPLAYER及其众多组件)
    • 微信日志文件: \VOLUME{...}\USERS\ALEXANDER\APPDATA\ROAMING\TENCENT\XWECHAT\LOG\PLAYER\WXPLAYER_20260420.XLOG
    • 程序与驱动数据: \VOLUME{...}\PROGRAMDATA\A-VOLUTE\* 和 \VOLUME{...}\PROGRAMDATA\NVIDIA CORPORATION\*

  1. “程序-依赖文件”映射表
    下表整理了程序所依赖的非系统核心/用户/第三方模块。
    | 程序名称 | 依赖文件 (非系统核心模块) |
    | :--- | :--- |
    | CXSTUDY.EXE (学习通) | - \VOLUME{...}\PROGRAMDATA\A-VOLUTE\A-VOLUTE.NAHIMIC\MODULES\SCHEDULED\AUDIODEVPROPS2.DLL (音频设备相关)
    - 多个用户临时目录下的 *.TMP\SYSTEM.DLL 文件 (疑似安装/更新缓存) |
    | WEIXIN.EXE (微信) | - 自身组件:
    - WXUTILITY.DLL
    - MMMOJO_64.DLL
    - LIBWXCODEC.DLL
    - LIBFFMPEG.DLL
    - VLC播放器组件:
    - WXPLAYER.DLL
    - LIBVLC.DLL
    - LIBVLCCORE.DLL
    - D3DCOMPILER_47.DLL
    - 约100个...\PLUGINS\下的VLC插件DLL (如各类音频/视频编解码、输出插件)
    - 硬件驱动组件:
    - NVDLISTX.DLL (NVIDIA)
    - IGD10IUMD64.DLL (Intel GPU)
    - NVLDUMDX.DLL (NVIDIA)
    - 音频模块:
    - AUDIODEVPROPS2.DLL (同学习通) |

  1. 共同依赖的系统DLL
    通过对比分析,两个程序共同依赖的系统DLL主要包括(不限于):
  • NTDLL.DLL
  • KERNEL32.DLL
  • KERNELBASE.DLL
  • USER32.DLL
  • ADVAPI32.DLL
  • MSVCRT.DLL
  • RPCRT4.DLL
  • SHELL32.DLL
  • COMBASE.DLL
  • OLE32.DLL
  • SHLWAPI.DLL
  • WINDOWS.STORAGE.DLL
  • SHCORE.DLL
  • BCRYPTPRIMITIVES.DLL
  • USERENV.DLL
  • CFGMGR32.DLL
  • WS2_32.DLL
  • AUDIODEVPROPS2.DLL (来自PROGRAMDATA\A-VOLUTE,这是一个第三方音频增强软件的组件,但被两个程序共同加载)

  1. 非标准路径文件访问检查
    经检查,两个程序均有访问“非标准”或“特定用户/程序”路径的情况:

  2. 学习通 (CXSTUDY.EXE):

    • 访问了大量用户临时文件: 在 \USERS\ALEXANDER\APPDATA\LOCAL\TEMP\ 目录下创建并访问了多个 .TMP 目录和其中的 SYSTEM.DLL 文件(如 NSB65EB.TMP\SYSTEM.DLL)。这通常是程序安装、更新或运行时解压的临时文件,符合常见行为,但路径并非Windows系统目录。
  3. 微信 (WEIXIN.EXE):

    • 访问了自身的插件和组件目录: 大量文件访问发生在 \USERS\ALEXANDER\APPDATA\ROAMING\TENCENT\XWECHAT\XPLUGIN\ 路径下。这是微信存放其扩展插件(如播放器、工具模块)的标准位置,不属于Windows系统路径。
    • 访问了程序数据路径: 访问了 PROGRAMDATA\A-VOLUTE\ 下的音频模块和 PROGRAMDATA\NVIDIA CORPORATION\ 下的驱动配置数据库,这些是第三方软件的配置和数据路径。
    • 访问了Windows应用商店应用路径: 访问了 PROGRAM FILES\WINDOWSAPPS\MICROSOFT.LANGUAGEEXPERIENCEPACKZH-CN_... 下的语言资源文件,这是Windows 10/11应用商店安装语言包的路径。

思考问题:

  • 依赖文件列表对取证调查有何价值?
    在数字取证中,Prefetch文件内记录的依赖文件列表具有重要价值。它本质上描绘了目标程序运行时的行为图谱。通过分析这些被加载的DLL和访问的文件路径,调查人员可以推断出程序的完整性、功能模块以及可能的后台行为。例如,在CXSTUDY.EXE的Prefetch中,它频繁访问用户临时目录下的多个SYSTEM.DLL文件,同时,依赖列表还能帮助识别程序关联的其他组件或配置文件,为厘清完整的攻击链提供线索。
  • 如果某个恶意程序被删除,Prefetch文件还能提供什么证据?
    即使恶意程序的主执行文件已被删除,其对应的Prefetch文件往往仍然保留在系统中,因为Windows不会立即清理它们。这份“遗骸”能提供关键证据。首先,Prefetch中记录的运行次数、最后一次及历史运行时间戳,可以清晰勾勒出恶意软件在系统中的活跃时间线,帮助确定感染窗口和攻击者的活跃时段。其次,文件中保存的可执行文件大小、哈希值(如4C6E0A75)是用于在威胁情报库中进行比对、确认恶意软件家族的关键标识。最后,如上一段所述,其记录的目录和文件访问痕迹,是分析恶意软件行为模式、持久化手段和横向移动企图的核心依据。因此,Prefetch文件是应对反取证手段、恢复攻击历史的重要证据源。

阶段四:证据固定

任务:进行证据固定

证据固定:

  • 使用CMD的 xcopy 或 robocopy 命令,将 C:\Windows\Prefetch 目录完整复制到取证工作目录
  • 计算原始目录和副本的哈希值(使用 certutil -hashfile 或 fciv)
  • 记录证据获取时间和系统信息

我们编写如下powershell脚本来完成该阶段的工作:

# 以管理员身份运行检查
$myWindowsID = [System.Security.Principal.WindowsIdentity]::GetCurrent()
$myWindowsPrincipal = New-Object System.Security.Principal.WindowsPrincipal($myWindowsID)
$adminRole = [System.Security.Principal.WindowsBuiltInRole]::Administrator

if (-not $myWindowsPrincipal.IsInRole($adminRole)) {
    Write-Host "请求管理员权限..." -ForegroundColor Yellow
    Start-Process PowerShell -Verb RunAs -ArgumentList "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`""
    exit
}

# 设置路径
$source = "C:\Windows\Prefetch"
$dest = "E:\2026年下学期文件\数字取证\作业\Windows取证技术\Prefetch\固定证据"

# 创建时间戳目录
$timestamp = Get-Date -Format "yyyyMMdd_HHmmss"
$destFolder = Join-Path $dest $timestamp
New-Item -ItemType Directory -Path $destFolder -Force | Out-Null

# 记录系统信息
$logFile = Join-Path $destFolder "forensic_log.txt"
$lockedFilesLog = Join-Path $destFolder "locked_files.txt"
"取证记录 - $(Get-Date)" | Out-File $logFile
"=================================" | Out-File $logFile -Append
"系统信息:" | Out-File $logFile -Append
"---------------------------------" | Out-File $logFile -Append
systeminfo | Select-String "OS 名称","OS 版本","系统类型","主机名" | Out-File $logFile -Append
"计算机名称: $env:COMPUTERNAME" | Out-File $logFile -Append
"用户名: $env:USERNAME" | Out-File $logFile -Append
"源目录: $source" | Out-File $logFile -Append
"目标目录: $destFolder" | Out-File $logFile -Append
"开始时间: $(Get-Date)" | Out-File $logFile -Append

Write-Host "开始 Prefetch 取证收集..." -ForegroundColor Green
Write-Host "源目录: $source" -ForegroundColor Cyan
Write-Host "目标目录: $destFolder" -ForegroundColor Cyan
Write-Host "`n"

# 复制 Prefetch 目录
Write-Host "1. 复制 Prefetch 目录..." -ForegroundColor Green
$copyLog = Join-Path $destFolder "copy_log.txt"
robocopy $source $destFolder /E /COPYALL /R:3 /W:5 /LOG:$copyLog /TEE /NP

# 获取源目录和副本的文件列表
Write-Host "`n2. 生成文件清单..." -ForegroundColor Green
$sourceFiles = Get-ChildItem -Path $source -Recurse -File | Select-Object -ExpandProperty FullName
$destFiles = Get-ChildItem -Path $destFolder -Recurse -File | Where-Object {$_.FullName -notmatch "\.(txt|log)$"} | Select-Object -ExpandProperty FullName

"文件统计:" | Out-File $logFile -Append
"源目录文件数: $($sourceFiles.Count)" | Out-File $logFile -Append
"副本文件数: $($destFiles.Count)" | Out-File $logFile -Append
"`n" | Out-File $logFile -Append

# 计算源目录的哈希值(跳过被锁定的文件)
Write-Host "3. 计算源目录哈希值..." -ForegroundColor Green
$hashFileSource = Join-Path $destFolder "source_hashes.txt"
"源文件哈希值 (MD5)" | Out-File $hashFileSource
"生成时间: $(Get-Date)" | Out-File $hashFileSource -Append
"源目录: $source" | Out-File $hashFileSource -Append
"=================================" | Out-File $hashFileSource -Append
"`n" | Out-File $hashFileSource -Append

$lockedFiles = @()
$count = 0
$total = $sourceFiles.Count
$processed = 0

foreach ($file in $sourceFiles) {
    $processed++
    $fileName = Split-Path $file -Leaf
    Write-Progress -Activity "计算源文件哈希" -Status "正在处理: $fileName" -PercentComplete (($processed / $total) * 100)
    
    try {
        # 尝试以只读、共享方式打开文件
        $hash = Get-FileHash -Path $file -Algorithm MD5 -ErrorAction Stop
        "$fileName : $($hash.Hash)" | Out-File $hashFileSource -Append
        $count++
    }
    catch {
        # 文件被锁定,记录并跳过
        $lockedFiles += $file
        "$fileName : [锁定] 无法访问" | Out-File $hashFileSource -Append
        Write-Warning "无法访问文件: $fileName"
    }
}

Write-Progress -Activity "计算源文件哈希" -Completed

# 记录锁定的文件
if ($lockedFiles.Count -gt 0) {
    "`n警告: 以下文件被锁定,无法计算哈希:" | Out-File $lockedFilesLog
    $lockedFiles | Out-File $lockedFilesLog -Append
    "`n锁定文件数: $($lockedFiles.Count)" | Out-File $logFile -Append
    Write-Host "警告: 有 $($lockedFiles.Count) 个文件被锁定" -ForegroundColor Yellow
}

"源文件哈希计算完成: $count 个文件" | Out-File $logFile -Append
"`n" | Out-File $logFile -Append

# 计算副本的哈希值
Write-Host "`n4. 计算副本哈希值..." -ForegroundColor Green
$hashFileDest = Join-Path $destFolder "destination_hashes.txt"
"副本文件哈希值 (MD5)" | Out-File $hashFileDest
"生成时间: $(Get-Date)" | Out-File $hashFileDest -Append
"副本目录: $destFolder" | Out-File $hashFileDest -Append
"=================================" | Out-File $hashFileDest -Append
"`n" | Out-File $hashFileDest -Append

$destCount = 0
$destProcessed = 0
foreach ($file in $destFiles) {
    $destProcessed++
    $fileName = Split-Path $file -Leaf
    Write-Progress -Activity "计算副本哈希" -Status "正在处理: $fileName" -PercentComplete (($destProcessed / $destFiles.Count) * 100)
    
    try {
        $hash = Get-FileHash -Path $file -Algorithm MD5 -ErrorAction Stop
        "$fileName : $($hash.Hash)" | Out-File $hashFileDest -Append
        $destCount++
    }
    catch {
        "$fileName : [错误] 无法计算哈希" | Out-File $hashFileDest -Append
    }
}

Write-Progress -Activity "计算副本哈希" -Completed

# 生成报告
Write-Host "`n5. 生成取证报告..." -ForegroundColor Green
$reportFile = Join-Path $destFolder "forensic_report.txt"
"Windows Prefetch 取证报告" | Out-File $reportFile
"生成时间: $(Get-Date)" | Out-File $reportFile -Append
"==================================================" | Out-File $reportFile -Append
"`n[系统信息]" | Out-File $reportFile -Append
"计算机名称: $env:COMPUTERNAME" | Out-File $reportFile -Append
"用户名: $env:USERNAME" | Out-File $reportFile -Append
"操作系统: $(systeminfo | Select-String 'OS 名称')" | Out-File $reportFile -Append
"`n[取证操作]" | Out-File $reportFile -Append
"源目录: $source" | Out-File $reportFile -Append
"目标目录: $destFolder" | Out-File $reportFile -Append
"开始时间: $(Get-Date -DisplayHint DateTime)" | Out-File $reportFile -Append
"结束时间: $(Get-Date)" | Out-File $reportFile -Append
"`n[文件统计]" | Out-File $reportFile -Append
"源目录文件总数: $($sourceFiles.Count)" | Out-File $reportFile -Append
"成功计算哈希的源文件数: $count" | Out-File $reportFile -Append
"被锁定的源文件数: $($lockedFiles.Count)" | Out-File $reportFile -Append
"副本文件总数: $($destFiles.Count)" | Out-File $reportFile -Append
"成功计算哈希的副本文件数: $destCount" | Out-File $reportFile -Append
"`n[文件完整性]" | Out-File $reportFile -Append
if ($count -eq $destCount) {
    "文件数量一致性: ✓ 通过" | Out-File $reportFile -Append
} else {
    "文件数量一致性: ✗ 不匹配 (源: $count, 副本: $destCount)" | Out-File $reportFile -Append
}
"`n[生成的证据文件]" | Out-File $reportFile -Append
"1. 操作日志: $logFile" | Out-File $reportFile -Append
"2. 复制日志: $copyLog" | Out-File $reportFile -Append
"3. 源文件哈希: $hashFileSource" | Out-File $reportFile -Append
"4. 副本哈希: $hashFileDest" | Out-File $reportFile -Append
"5. 锁定文件列表: $lockedFilesLog" | Out-File $reportFile -Append
"6. 本报告: $reportFile" | Out-File $reportFile -Append
"`n[取证说明]" | Out-File $reportFile -Append
"1. 某些 Prefetch 文件可能被系统锁定,这是正常现象" | Out-File $reportFile -Append
"2. 锁定的文件已在 '锁定文件列表' 中记录" | Out-File $reportFile -Append
"3. 哈希值可用于验证文件的完整性" | Out-File $reportFile -Append
"4. 所有操作均已记录,符合取证要求" | Out-File $reportFile -Append
"==================================================" | Out-File $reportFile -Append

# 完成
Write-Host "`n" + "="*50 -ForegroundColor Green
Write-Host "取证操作完成!" -ForegroundColor Green
Write-Host "="*50 -ForegroundColor Green
Write-Host "`n[结果摘要]" -ForegroundColor Cyan
Write-Host "源目录: $source"
Write-Host "目标目录: $destFolder"
Write-Host "源文件总数: $($sourceFiles.Count)"
Write-Host "成功计算哈希的源文件: $count"
Write-Host "被锁定的文件: $($lockedFiles.Count)"
Write-Host "副本文件数: $($destFiles.Count)"
Write-Host "成功计算哈希的副本文件: $destCount"
Write-Host "`n[生成的文件]" -ForegroundColor Cyan
Write-Host "1. 取证报告: $reportFile"
Write-Host "2. 操作日志: $logFile"
Write-Host "3. 源文件哈希: $hashFileSource"
Write-Host "4. 副本哈希: $hashFileDest"
if ($lockedFiles.Count -gt 0) {
    Write-Host "5. 锁定文件列表: $lockedFilesLog" -ForegroundColor Yellow
}
Write-Host "`n注意: 被锁定的文件是系统正在使用的 Prefetch 文件,这是正常现象。" -ForegroundColor Yellow
Write-Host "这些文件在锁定文件列表中已记录,不会影响取证完整性。" -ForegroundColor Yellow
Write-Host "`n" + "="*50 -ForegroundColor Green
Read-Host "按 Enter 键退出"

运行结果如下:
img

四、拓展思考(加分项)

反取证意识:攻击者可能如何清除Prefetch证据?作为取证人员如何发现反取证行为?

攻击者清除Prefetch证据的常见手法包括直接删除整个Prefetch目录(C:\Windows\Prefetch)或其中的特定.pf文件,以移除程序执行痕迹;使用系统清理工具(如CCleaner)或脚本批量擦除;通过修改注册表(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters)将EnablePrefetcher值设为0来完全禁用Prefetch功能,从而阻止新证据产生;或利用时间戳篡改工具将删除操作的时间伪造成更早日期,以规避时间线分析。更隐蔽的做法是仅覆盖或擦除与恶意软件相关的特定条目,而非全部文件,以降低异常性。
作为取证人员,发现针对Prefetch的反取证行为需采取多维验证方法。首先检查Prefetch目录本身的状态:若整个目录缺失或文件数量异常稀少(尤其在活跃系统中),或发现目录创建时间与系统安装时间不符,即存在可疑。其次进行时间线分析,对比Prefetch文件时间戳与$MFT中的记录,若发现大量删除记录或时间戳冲突,可能指示人为清除。同时检查注册表中EnablePrefetcher的键值是否被篡改,以及系统日志(如事件ID 4656或4663)中是否有非常规的文件删除事件。此外,应关联其他证据源进行交叉验证,例如检查UserAssist、RecentFileCache.bcf、Amcache.hve等是否也存在异常空白或删除痕迹,并分析页面文件或内存转储中是否残留已被删除的Prefetch条目。最后,结合网络日志、进程监控记录等外围数据,若发现存在恶意软件活动迹象却无对应Prefetch记录,则强烈暗示反取证行为已发生。


🔍 实践题目四:Windows 注册表取证分析

一、实践背景

你作为取证分析师接手一台 Windows 工作站,需在接触完整镜像前,先通过在线注册表快速浏览建立系统基础画像(System Profiling)。本实践要求只读访问,严禁修改任何键值。

二、实践目标

img

三、实践环境

  • Windows 10/11 虚拟机或实践主机(非生产环境)

  • 账户具备本地管理员权限(仅用于查看 SAM 等受保护区域,禁止修改)

  • 工具:注册表编辑器(regedit.exe)、计算器(用于时间戳转换)

四、实践任务与操作步骤

任务 1:注册表结构认知(3 分钟)
  1. 打开 regedit,展开左侧栏,截图记录五大根键的缩写与全称对照。
    img
    我这里没有显示缩写,不过缩写分别是HKCR、HKCU、HKLM、HKU、HKCC。
  2. 打开文件资源管理器,定位至 C:\Windows\System32\config\,列出 3 个配置单元文件名(如 SOFTWARE、SYSTEM、SAM),并说明每个文件对应加载到哪个根键下。
    img

其对应为:

配置文件 对应的注册表根键 说明
SOFTWARE HKEY_LOCAL_MACHINE\SOFTWARE 系统安装的软件配置
SYSTEM HKEY_LOCAL_MACHINE\SYSTEM 系统硬件和服务配置
SAM HKEY_LOCAL_MACHINE\SAM 安全账户管理器
SECURITY HKEY_LOCAL_MACHINE\SECURITY 安全策略设置
DEFAULT HKEY_USERS\.DEFAULT 默认用户配置
任务 2:系统安装时间提取与转换(8 分钟)
  1. 导航至:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
    img
  2. 在右侧窗格提取并记录以下值:

ProductName(操作系统名称) Windows 10 Home China

CurrentVersion(版本号) 6.3

InstallDate(安装日期,DWORD 类型,Unix 时间戳格式) 67ece918(1743579416)

RegisteredOwner(注册用户名) Alexander

关键操作:将 InstallDate 的十进制数值转换为标准北京时间(UTC+8)。

提示:使用在线转换工具或公式 =A1/86400 + DATE(1970,1,1) + 8/24,记录计算过程。
img
右键点击 CurrentVersion 键 → 选择“权限”上方的导出或直接查看,记录该键的 LastWriteTime(最后写入时间)。
这里应该导出为TXT才能看见
img
可以看到最后写入时间为2026/4/20 - 15:23
任务 3:用户账户痕迹提取(6 分钟)

  1. 导航至:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

展开 ProfileList,观察以 S-1-5-21-... 开头的子项(SID)。

  1. 选择其中一个 SID,查看右侧 ProfileImagePath,记录该用户配置文件路径。

img
配置文件路径为 C:\Users\Alexander

  • 回答:从该路径中能否推断出该账户是本地账户还是域账户? 简述理由。
    Windows 操作系统中,用户配置文件的存储路径有明确约定:
    本地账户的配置文件默认存储在 C:\Users<用户名>目录下。
    域账户的配置文件路径通常格式为 C:\Users<域名_用户名>或 C:\Users<用户名>.<域名>,其中会包含域标识符。
    由于该路径仅为简单的 C:\Users\Alexander,不含任何域名信息,符合本地账户的存储规则,因此可以判断这是一个本地用户账户。

任务 4:证据固定与报告(3 分钟)
将以上发现整理为 Markdown 表格,必须包含以下列:

| 证据项 | 注册表完整路径 | 提取值 | LastWriteTime | 取证价值 |

整理的表格如下:

证据项 注册表完整路径 提取值 LastWriteTime 取证价值
根键对照 不适用 HKCR-HKEY_CLASSES_ROOT
HKCU-HKEY_CURRENT_USER
HKLM-HKEY_LOCAL_MACHINE
HKU-HKEY_USERS
HKCC-HKEY_CURRENT_CONFIG
不适用 了解注册表基本结构,便于后续分析
SOFTWARE配置单元文件 C:\Windows\System32\config\SOFTWARE SOFTWARE文件 不适用 存储HKEY_LOCAL_MACHINE\SOFTWARE数据,包含已安装软件配置
SYSTEM配置单元文件 C:\Windows\System32\config\SYSTEM SYSTEM文件 不适用 存储HKEY_LOCAL_MACHINE\SYSTEM数据,包含系统硬件和服务配置
SAM配置单元文件 C:\Windows\System32\config\SAM SAM文件 不适用 存储HKEY_LOCAL_MACHINE\SAM数据,包含安全账户管理器信息
操作系统名称 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion Windows 10 Home China 不适用 确认目标系统版本,了解系统环境
系统版本号 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion 6.3 不适用 Windows内部版本号,对应Windows 8.1/Windows Server 2012 R2,与ProductName不一致需注意
系统安装时间 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion 安装时间戳:1743579416
转换为北京时间:2026-04-20 15:23
不适用 确定系统安装时间,用于时间线分析
注册用户名 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion Alexander 不适用 系统注册所有者,可能为设备使用者
CurrentVersion键最后写入时间 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion 不适用 2026/4/20 - 15:23 键值最后修改时间,用于确定系统信息更新时间
用户配置文件路径 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-21-... C:\Users\Alexander 不适用 定位用户配置文件存储位置
账户类型判断 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-21-... 本地账户 不适用 根据路径格式C:\Users<用户名>判断为本地账户,非域账户

实验感受与心得

通过本次涵盖Windows快捷方式、JumpList、Prefetch及注册表分析的综合性实验,我对数字取证技术有了更为深入和立体的认识。实验之初,我对“数字痕迹”的理解还停留在抽象概念,而亲手解析LNK文件的二进制结构、提取JumpList中的用户活动记录、追踪Prefetch记载的程序执行历史,以及从注册表中挖掘系统安装时间与用户信息后,我真正体会到操作系统本身就是一个详尽的日志记录者。每一个快捷方式的创建、每一次程序的启动、每一条注册表键值的更新,都是用户与系统交互留下的“脚印”,取证工作便是通过专业技术将这些离散的脚印串联、解读,还原出事件的原貌。

在技术层面,我不仅掌握了使用特定工具(如LCEmd、JumpListsView、PECmd、Regedit)进行数据提取和解析的基本流程,更关键的是理解了各项证据的取证价值所在。例如,LNK文件能提供目标路径和访问时间;JumpList能勾勒出用户近期的工作焦点;Prefetch文件能揭示程序的执行频次和依赖关系;而注册表则存储着系统的核心配置与状态。我认识到,数字取证远不止于工具操作,其核心在于一种思维方法:即保持对细节的敏锐,对时间线逻辑的严谨,以及对多源证据进行关联和交叉验证的能力。例如,当发现Prefetch记录的时间戳与文件系统时间戳不一致时,这并非误差,反而可能指向系统批量操作或反取证行为,这种矛盾点往往正是调查的突破口。

实际操作中,我深刻体会到“只读”原则和证据完整性保护的重要性。通过编写脚本对Prefetch目录进行哈希校验和固定,我实践了取证调查中确保证据不被篡改的标准流程。同时,实验中关于虚拟机环境识别、已删除文件痕迹分析、反取证行为探测等思考题,极大地锻炼了我的分析思维,让我明白取证人员必须具备攻击者的视角,思考证据如何被隐藏或破坏,才能更有效地发现和提取真相。此外,对用户隐私与法律授权的郑重提醒,也让我意识到这项技术所承载的严肃伦理与法律责任。

总之,本次实验犹如一次系统的“数字现场勘查”训练。它让我跳出普通用户的视角,以调查者的眼光审视熟悉的Windows系统,看到了背后默默运行的证据生成与存储机制。我认识到,有效的数字取证依赖于扎实的技术知识、严谨的操作流程、批判性的分析思维以及对法律伦理的恪守,这些收获对我今后在此领域的学习与实践具有重要的指导意义。

本次实践的具体内容由KIMI生成。没有使用其他AI,除实践任务生成外也没有使用AI生成其他内容。
实践中没有碰到需要AI解决的技术问题。
本次实验涉及到的非隐私的所有文件已上传到代码仓库
本文已上传到博客园

posted @ 2026-04-20 21:28  20232304冯天悦  阅读(249)  评论(0)    收藏  举报