原文:
annas-archive.org/md5/754b7f24cff88edfa357c78aee3d6840
译者:飞龙
序言
Windows 取证实战提供了解决挑战并在 Windows 平台上轻松开展有效调查的“取证配方”。你将从数字取证与证据获取的复习开始,这将帮助你理解在从 Windows 系统获取证据时所面临的挑战。接下来,你将学习如何获取 Windows 内存并使用现代取证工具分析 Windows 系统。本书还将深入讨论取证分析的其他元素,例如如何分析 Windows 系统数据、解析最常用的网页浏览器和电子邮件客户端数据,以及如何在数字取证调查中进行有效报告。
你将了解 Windows 10 与以前版本的不同之处,以及如何克服它带来的特定挑战。最后,你将学习如何排查在进行数字取证调查时遇到的问题。
本书结束时,你将能够高效地进行取证调查。
本书涵盖的内容
第一章,数字取证与证据获取,将简要介绍数字取证作为一门学科,并涵盖数字证据获取、检查和报告的基础知识。
第二章,Windows 内存获取与分析,将引导你使用 Belkasoft RAM Capturer 和 DumpIt 获取 Windows 内存。之后,你将学习如何使用 Belkasoft Evidence Center 和 Volatility 分析内存映像。
第三章,Windows 驱动器获取,将引导你获取 Windows 取证数据的主要来源——硬盘和固态硬盘。你将学习如何使用 FTK Imager 和 DC3DD 创建取证映像,并学习如何使用 Arsenal Image Mounter 挂载这些映像。
第四章,Windows 文件系统分析,将引导你分析最常见的 Windows 文件系统——新技术文件系统(NTFS),并使用 Sleuth Kit 进行操作。此外,你将学习如何使用 Autopsy、ReclaiMe Pro 和 PhotoRec 从 NTFS 及其后代 ReFS 中恢复已删除的文件。
第五章,Windows 快照复制分析,将展示如何使用 ShadowCopyView 浏览和复制 VSC 中的文件。你还将学习如何使用 VSSADMIN 和 MKLINK 挂载这些快照,并使用 Magnet AXIOM 分析其中的数据。
第六章,Windows 注册表分析,将展示如何使用 Magnet AXIOM 和 RegRipper 从 Windows 注册表中提取数据。此外,你还将学习如何使用注册表浏览器恢复已删除的注册表数据。
第七章,主要 Windows 操作系统遗留物,将介绍 Windows 取证中的主要遗留物,包括回收站项目、Windows 事件日志、LNK 文件和预取文件。你将学习如何使用 EnCase Forensic、Rifiuti2、Magnet AXIOM、FullEventLogView、EVTXtract、LECmd、Link Parser、PECmd 和 Windows Prefetch Carver 分析这些遗留物。
第八章,网页浏览器取证,将带你通过 BlackBagBlackLight、Magnet Axiom 和 Belkasoft Evidence Center 分析最流行的 Windows 网页浏览器。同时,你将学习如何从分页文件中提取浏览器数据。
第九章,电子邮件和即时消息取证,将教你如何分析最流行的 Windows 邮件客户端 Microsoft Outlook 和 Mozilla Thunderbird,以及即时消息应用 Skype 的遗留物。同时,你将学习如何从取证镜像中提取 Web 邮件遗留物。
第十章,Windows 10 取证,将介绍 Windows 10 特有的遗留物,如 Cortana、邮件应用、Xbox 应用和通知。你将学习数据存储位置、格式以及如何提取和分析这些数据。
第十一章,数据可视化,将展示如何通过数据可视化技术改善你的取证报告。你将学习如何在 Forensic Toolkit (FTK)、Autopsy 和 Nuix 中使用这些技术。
第十二章,Windows 取证分析中的故障排除,将教你如何解决取证软件的问题,包括商业软件和免费/开源软件;展示在进程失败时该怎么做,为什么分析假阳性非常重要;给出数字取证的初步建议;并提供进一步阅读的优质资源清单。
本书所需工具
本书需要以下软件:
-
Arsenal Image Mounter
-
Autopsy
-
Belkasoft Evidence Center
-
Belkasoft RAM Capturer
-
BlackBagBlackLight
-
dc3dd
-
DumpIt
-
EnCase Forensic
-
EVTXtract
-
FTK
-
FTK Imager
-
FullEventLogView
-
Intella
-
LECmd
-
Link Parser
-
Magnet AXIOM
-
Nuix
-
PECmd
-
PhotoRec
-
ReclaiMe Pro
-
Registry Explorer
-
RegRipper
-
Rifiuti2
-
ShadowCopyView
-
SkypeLogView
-
The Sleuth Kit
-
Volatility
-
Windows Prefetch Carver
本书中列出的许多商业工具都提供了可以免费下载的试用版本。下载链接将在章节中提供。
本书适用对象
如果你是一个取证分析师和事故响应专业人员,想要解决 Windows 平台的计算机取证调查,那么本书适合你。
各章节
本书中,你将找到一些频繁出现的章节标题(准备工作、如何操作、原理解析、更多内容以及参见)。
为了清晰地说明如何完成食谱,我们使用以下几节内容:
准备工作
本节告知您该食谱的预期内容,并描述了设置任何所需软件或初步设置的步骤。
如何操作…
本节包含遵循食谱所需的步骤。
它是如何工作的…
本节通常包含对前一节内容的详细解释。
还有更多……
本节包含关于食谱的额外信息,旨在让读者对食谱有更深入的了解。
另请参见
本节提供与食谱相关的其他有用信息链接。
约定
本书中有多种文本风格,用于区分不同类型的信息。以下是这些风格的几个示例及其含义解释。
文本中的代码词、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟网址、用户输入和 Twitter 账号等如下所示:“所以在我们的例子中是D:\Belkasoft Memory Forensics Test.
”
任何命令行输入或输出都如下所示:
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem
--
profile=WinXPSP3x86 malfind -p 868 --dump-dir
X:Stuxnet
新术语和重要单词用粗体显示。您在屏幕、菜单或对话框中看到的单词也会以这种方式出现在文本中:“第一个窗格显示有关检测到的影像副本的信息,包括名称、Explorer 路径、卷路径、创建时间等。”
警告或重要提示会以框框的形式显示。
小贴士和技巧会以这种形式出现。
客户支持
现在您是一本 Packt 书籍的骄傲拥有者,我们为您提供了许多帮助,帮助您最大限度地发挥购买的价值。
下载本书的彩色图片
我们还为您提供了一个 PDF 文件,其中包含本书中使用的截图/图表的彩色图片。这些彩色图片将帮助您更好地理解输出中的变化。您可以从www.packtpub.com/sites/default/files/downloads/WindowsForensicsCookbook_ColorImages.pdf.
下载该文件。
勘误
虽然我们已尽力确保内容的准确性,但错误难免发生。如果您在我们的书籍中发现错误——可能是文本或代码中的错误——我们将非常感激您能向我们报告。通过这样做,您可以帮助其他读者避免困扰,并帮助我们改进后续版本的书籍。如果您发现任何勘误,请访问www.packtpub.com/submit-errata
报告,选择您的书籍,点击“Errata Submission Form”链接,并输入勘误的详细信息。一旦您的勘误被验证,我们将接受您的提交,勘误将上传到我们的网站,或加入该书籍的勘误列表。
要查看先前提交的勘误表,请访问www.packtpub.com/books/content/support
,并在搜索框中输入书名。所需信息将显示在勘误部分下。
盗版
互联网上盗版版权材料是所有媒体的持续问题。在 Packt,我们非常重视保护我们的版权和许可。如果您在互联网上发现我们作品的任何形式的非法复制,请立即提供位置地址或网站名称,以便我们采取措施。
请通过copyright@packtpub.com
联系我们,并提供涉嫌侵权材料的链接。
我们感谢您帮助保护我们的作者以及我们为您带来宝贵内容的能力。
问题
如果您对本书的任何方面有问题,请联系我们,邮箱为questions@packtpub.com
,我们将尽力解决问题。
第一章:数字取证与证据获取
本章将涵盖以下内容:
-
识别证据来源
-
获取数字证据
-
确保证据在法医上是可靠的
-
编写报告
-
数字取证调查:一个国际化的领域
-
从 Windows 系统获取数字证据的挑战
介绍
数字取证是一个广泛的术语,可以涵盖多个学科领域。广义来说,它指的是对在计算设备上或借助计算设备实施的犯罪进行调查。几年前,这种方法可能只适用于调查财务欺诈、知识产权盗窃或类似的案件,这些案件中计算机在犯罪的实施过程中是必不可少的。
然而,在当今世界,数字设备的普及程度已经到了这样一个地步,即使是看似与计算机无关的犯罪——例如家中的盗窃,珠宝被偷,或者一个从学校回家的孩子被绑架——也可能涉及大量的数字证据。
数字证据是指任何与调查相关且可以在数字设备上找到的内容。随着数字设备种类的增加,数字设备的范围几乎涵盖了我们周围的一切——不仅是计算机和手机,还有汽车、电视、冰箱和暖气系统等。
数字取证作为一个学科,不仅仅是解决犯罪问题。公司中的人力资源问题、私人或民事案件,以及日常的数据恢复工作,都可以归入数字取证的范畴。因此,可以合理地说,数字取证不仅是一个庞大的领域,而且还在不断扩展。基于这一点,在本书中,我们决定专注于数字取证的一个特定方面:Windows 操作系统的法医分析。
为什么选择 Windows?
我们本可以选择任何操作系统作为本书的主题,更不用说在数字取证调查中出现的无数智能手机和其他连接设备。然而,Windows 对于普通计算机用户和企业来说是一个受欢迎的操作系统——NetMarketShare 的最新数据显示,Windows 的市场份额超过了 88%。以下图表展示了 Windows 与 Mac、Linux 以及其他操作系统的市场份额对比。
无论你是在执法机关工作、在数字取证公司工作、作为该领域的学术研究员,还是作为自由职业者从事调查工作,你都会在某些时刻遇到 Windows 系统。
我们编写本书的目标是创建一种食谱式的指南,允许你随时翻阅,使用这些食谱帮助你的调查。
在 Windows 机器上经常运行的操作系统和程序种类繁多,使得提供一份完整的指南变得困难。尤其是考虑到最近的改版,导致了 Windows 8、Windows 8.1 和 Windows 10 的推出,它们将程序称为应用程序,并且在法医分析和用户体验方面与早期版本略有不同。我们尽力在本书中突出调查中的最重要点,并讨论最新版本变化的广泛影响。
Windows 文件系统
Windows 机器使用 NTFS,曾经代表新技术文件系统(New Technology File System),虽然这个缩写现在已经过时。所有版本的 Windows 默认都运行在 NTFS 上。
关于 NTFS,最需要记住的事情是所有东西都是文件。文件系统创建的初衷是它可以轻松扩展,并且在各个层次上都具有安全性和可靠性。然而,这也为取证调查和管理使用带来了一些独特的挑战,了解任何文件都可以位于系统的任何地方,使得在分析机器时,理解自己看到的内容变得更加具有挑战性。
主文件表(MFT)是文件系统的基础。在这里,我们可以找到有关文件的所有相关信息。值得注意的是,MFT 中的第一个条目是一个指向 MFT 本身的条目,这可能会让初学者在 Windows 文件系统分析时感到困惑。
在 Windows 调查中,最重要的元素之一是注册表,其中存储着关于系统配置的信息以及其他取证宝贵资料。像 RegEdit 和 RegRipper 这样的工具在注册表分析中非常有用,许多广泛使用的通用取证程序,如EnCase和BlackLight,也能派上用场。
本书将讨论 Windows NT 文件系统中各种调查元素的具体内容。目前需要记住的最关键点是:NTFS 中的所有内容都是文件;主文件表是文件系统的基础;注册表包含有用的系统配置信息。
识别证据来源
正如任何数字取证调查员所知道的,几乎所有案件所面临的主要挑战之一就是需要处理的数据量和可供分析的来源。一个有用的技能是能够查看与案件相关的证据来源,并作出价值判断,判断哪些证据可能最有用。
从案件开始时,这可能表现为确定需要从犯罪现场移除哪些物理物品——计算机和手机几乎总是被扣押,但像 USB 闪存、智能电视和卫星导航系统怎么办?你又如何把一台连接 WiFi 的冰箱放进法拉第袋里呢?
开个玩笑,一旦调查员确定了他们将尝试提取证据的项目,接下来的难题是弄清楚哪些证据最为相关,以及它们可以从哪里找到。
在 Windows 系统中,有多个元素在不同类型的调查中都会证明非常有用。虽然一些元素会因案件不同而有所变化——例如,寻找知识产权盗窃或金融欺诈的证据,与在儿童保护调查中寻找的来源大相径庭——但总体而言,以下的证据来源通常能提供有用的信息,从中可以进一步推断。
在较早的 Windows 版本中(大约在 XP 和 2000 时期),处理的程序较少,因此潜在的证据来源也较少,但也因此造成的混淆较少。XP 是 Windows 开始支持 NT 文件系统的时期,它提升了之前的 FAT 文件系统,并允许对系统进行更深入的分析。
Prefetch 文件是在 XP 中引入的,并迅速成为最相关的证据来源之一,至今依然如此。从用户体验的角度来看,主要目的是加速操作。Prefetch 文件记录了哪些程序被最频繁使用,并确保这些程序预先加载到内存中,这样当用户启动计算机并尝试访问某个程序时,它会更快地加载。从法医的角度来看,这意味着 Prefetch 文件提供了大量关于用户一般计算机习惯的信息——他们最常使用哪些程序,以及在某种程度上,它们是如何被使用的。Prefetch 文件存储在 %SystemRoot%Prefetch
目录中,并将在 第七章 中详细讨论,主要 Windows 系统文物。
随后的 Windows 更新引入了越来越复杂的元素,其中最相关的之一就是 BitLocker。
BitLocker 提供了完整的卷加密,并且还包括一个针对便携设备的版本,称为 BitLocker To Go。只要知道密码,解密 BitLocker 信息相对简单,并且可以使用一系列法医软件进行解密,书中稍后会详细介绍其中的一些。判断一个卷是否使用 BitLocker 加密的最简单方法是查看卷头中是否存在 -FVE-FS-
。一旦确定了这一点,并找到了或恢复了密码,就可以使用 FTK 或 EnCase 等工具来解密信息。
与 BitLocker 推出时相似,随着 Windows Vista 的发布,Windows 系统中用户帐户的结构也发生了变化。这一点主要从用户本身的角度来看,主要的变化是,许多以前任何用户都可以进行的系统级别的修改,现在只能由管理员进行。这在取证过程中也是一个重要点,特别是在计算机有多个用户,其中只有一个用户有管理员密码的情况下。
Internet Explorer 及其继任者 Microsoft Edge,多年来经过了多次彻底的更新。稍后我们将更详细地分析 Edge,但目前可以说,浏览器中包含大量有价值的信息。可以说,Internet Explorer 中最重要的元素之一就是缓存,它包含了有关用户访问过的页面以及任何已下载内容的信息。
私密浏览是 Windows 系统中最终用户最常误解的选项之一:虽然这可能防止家中其他人发现用户的隐秘上网习惯,但它当然仍然可以进行取证调查。
越来越多的用户意识到,数字取证方法可以提取的信息量,而近年来,操作系统、应用程序和软件中的隐私选项已成为许多计算机用户日益关注的问题。这导致了替代软件的安装和使用逐渐增加,例如 Tor 浏览器,它声称可以防止他人揭示终端用户的真实位置。然而,即便是这些方法也并非无法被取证调查发现,正如Epifani 等人于 2015 年数字取证研究研讨会上所展示的那样。
任何试图模糊或大规模删除数据的行为都应引起调查员的高度怀疑;反取证方法越来越普遍,但与此相对应的,取证分析师也有越来越多的方法来揭示用户试图隐藏的元素。
确保证据的取证有效性
数字调查中的证据链至关重要。它不仅展示了在任何特定时刻谁访问了证据,还 - 至少在理论上 - 显示了证据被扣押后所做的处理,以及为确保证据的保存和完整性所采取的措施。
对于在团队中工作的调查员,比如执法机构或公司内部的工作人员,通常会有一个已经建立的流程可供遵循,按照机构或公司提供的指导方针进行操作。对于自由职业者和个人调查员(或者认为自己公司收集程序需要一些改进的调查员),重要的是要牢记一些基本原则。
你作为调查员所需展示的法医完整性水平,可能至少部分取决于你所处理案件的性质。例如,民事案件通常不需要像刑事调查那样高的证据完整性,因为民事案件较少会进入法庭。然而,良好的做法是养成保持尽可能高的法医完整性的习惯;这样做意味着,如果将来你专注于更深入的调查,你将已经习惯为你的法医检查设定正确的基础工作。
通常,在收集证据时,只需对设备进行成像——也就是创建其中数据的精确副本——然后将此法医图像作为分析的基础,而不是对从现场查获的物理设备进行分析。有时,你还可能需要验证副本的真实性,并确保你用于复制数据的过程没有以任何方式改变数据。审计记录是这一过程的重要组成部分——如果你能展示数据源存储的位置、存储在哪些设备中、存储多长时间以及谁曾访问过这些数据,这应该就足够了。
从调查现场移除数字证据源是此过程中的第一步,必须小心谨慎地进行。关闭或拔掉机器电源、输入密码、移动鼠标或与犯罪现场调查中遇到的任何物品进行其他类型的交互,可能会对调查结果产生不可预测的影响。有时,设备被设置为关闭时自动清除数据;有些设备在密码输入错误时会加密所有数据。
在大多数情况下,调查员会被鼓励将证据源保留在其发现时的状态。例如,如果从现场回收了一部手机,它可能会被放入法拉第袋中,这将屏蔽电场,因此在手机运输过程中阻止信号通过。
如果没有办法在不以某种方式篡改物品的情况下将其移出现场——例如,如果一台台式电脑已经插上电源并开机,但需要被带走进行分析——负责移除该物品的人应该具备专业资格,确保除绝对必要的更改外,其他任何变化都不会发生,并且所有操作都应在审计记录中详细记录。
这听起来可能像是一个相对直接的过程——除非绝对必要,否则不要改变任何东西;如果确实需要更改,确保执行更改的人有资格进行操作;并且要记录所有发生的事情。然而,这是关于证据保存基本要求的广泛概述,这些要求会根据当地或国家的立法有所不同——有时甚至差异很大。成为计算机取证专家最具挑战性的一点是,计算机犯罪往往具有国际性质,调查跨越几个大洲甚至一个国家内的多个州也是常见的。
因此,在涉及数字取证证据的识别、收集、保存和分析时,验证当地的立法要求至关重要,特别是如果你所处理的案件可能最终进入法庭。
编写报告
如前述部分提到的链条保管/审计记录,报告写作的风格无疑会根据立法要求、公司或机构的指南以及个别调查员的风格有所不同。再一次,掌握数字取证报告写作的基础知识是非常有意义的,这样你就能在灵活的技能范围内开展工作。
报告的内容可能根据最终阅读者的不同而大不相同。如果你正在调查一起民事纠纷,那么你的最终报告可能不会使用高度技术化的语言,可能只会用普通人能够理解的术语概述所使用的方法以及所发现的内容。然而,如果你需要作为专家证人在法庭上作证,那么无疑需要更高水平的技术细节和更深入的调查过程展示。
广义来说,大多数数字证据报告应该包括以下内容:
-
主要调查员的姓名、职务和公司。
-
数字取证检验员的姓名、职务和公司(如果与前述人员不同)。
-
案件的简要描述,包括正在调查的活动性质。
-
被调查的个人或设备、数据的所有者姓名。
-
调查的开始和结束日期。
-
在整个调查过程中使用的方法,包括但不限于证据的识别、收集、保存和分析。这还可能包括使用的工具和过程的详细信息,以及链条保管的副本。
-
调查结果的概述,依据报告开始时指定的原始活动,以及在调查过程中发现的任何其他相关信息。
-
截图、打印件或其他证据项目,展示案件结果。
-
结果分析,包括关于被告是否有罪或无罪的任何结论。
-
任何附录、词汇表或其他可能对报告读者有用的信息。
许多取证工具会生成自己的报告,格式可以是数字版或可打印版,样式多种多样,例如 PDF、Excel 文档或 Word 文件。一些软件包,如 Nuix 的 Investigators Suite,包含像 Web Review 和 Analytics 这样的附加功能,允许多个用户查看或在同一案件上协作。这在调查过程中非常有用,因为它可以让管理员或高级调查员分配案件中的特定角色,也能在编写报告时派上用场。某些用户只能访问最终报告,他们可以查看已找到的结果并以用户友好的图表形式展示;如果他们具有正确的权限,还可以进一步查看证据。以下图表展示了 Nuix Web Review 和 Analytics 界面的仪表板,允许用户在数字取证调查中查看和管理证据。
数字取证调查 - 一个国际化领域
正如我们简要讨论的那样,数字取证调查员所遇到的最大挑战之一,无论是刑事案件还是民事案件,都是他们调查范围的国际性。
在调查像DDoS攻击(即一个人或一群人通过请求淹没网站或计算机,导致其无法正常工作)、在线信用卡信息盗窃或银行欺诈等案件时,调查员可能会发现嫌疑人分布在全球各地。例如,在菲律宾涉及儿童虐待直播的案件中,调查员遇到的一个主要问题是,观看直播内容的人也是调查对象,但他们分布在世界各地,由于许多人使用各种隐匿手段,追踪起来非常困难。世界各国的法律也各不相同:一个国家的立法可能会造成法律漏洞,给案件带来麻烦,并影响案件是否能够最终得出结论或被搁置。
犯罪日益全球化意味着这是一个我们无法忽视的问题——它不会消失。相反,这个问题看起来只会随着每年的推移而进一步加剧。如今,我们的数据存储在云端——如今,我们的数据存储在云端;我们互动的对象不仅仅是我们在现实生活中遇到的人,而是那些我们曾经称为陌生人的人,现在越来越多地成为我们社交互动的基础;我们的银行账户几乎可以在全球任何地方访问,且常常支持多种货币。仅仅追踪一个单纯生活在 21 世纪的个人的行为和数据痕迹就已经足够困难,更不用说试图调查一个分布在不同地理位置、并且有意持续伪装数据、隐藏自己的人群了。
然而,进展已经取得。近年来,许多项目纷纷出现,旨在解决国际调查所带来的具体挑战。一个例子是 EVIDENCE 项目,由意大利律师 Maria Angela Biasotti 协调,她与欧洲各地的同事合作,致力于开发一个关于电子证据的共同理解,以及一个更具全球可行性的跨国合作方式,同时推动全球范围内更标准化的刑事调查程序。
这是一个值得称赞的目标,至少 EVIDENCE 项目正在朝着这个方向快速推进;在撰写本文时,几个成员国之间的测试实施正在进行中。然而,目前,调查人员仍然面临着需要处理涉及国际数据来源和影响的案件的挑战。
那么,在此期间,我们可以做些什么来简化这一过程呢?
在接手案件之前进行范围评估是一个良好的做法,无论案件的大小或相对重要性如何,但当涉及国际因素时,这一点尤为重要。这些因素可能会影响获取证据所需的时间:例如,如果你需要从另一个国家,甚至是另一个州的服务器中提取数据,你至少需要对获取访问权限的要求有基本的了解,甚至了解是否可能做到这一点。
当然,完全了解全球各地与数字取证调查相关的各种法律是不可能的。实际上,调查人员能做的最好的事情,就是尽可能全面地了解本地区的法律,然后在需要跨境工作时寻求建议。
然而,除了立法元素外,国际调查中还有一些更为平凡的方面,例如语言分析。关键字搜索通常是调查的起点,或者至少是在开始阶段的某个环节——但如果你的案件涉及多个国家,你可能会对关键词感到迷茫。
大多数大型数字取证解决方案,如 EnCase 和 Nuix Investigator,都内置了多语言关键词能力,这非常有帮助。有些甚至可以扫描你输入的证据,然后返回关于案件中使用的语言的分析结果。你可以利用这些分析结果为你的调查奠定基础,并指导未来的搜索。然而,俚语仍然是许多人的难题,犯罪分子也越来越聪明。尽管词典可以提供与毒品滥用、儿童剥削或金融诈骗相关的给定术语的多个同义词,但它可能无法涵盖人们在讨论中使用的所有不太正式的词汇。
然而,进展正在取得,许多数字取证会议和研究小组的讨论时间都致力于探讨作为调查员的我们如何增加合作,并使调查全球案件变得更容易。
从 Windows 系统获取数字证据的挑战
调查 Windows 机器的挑战之一是 NTFS 的设置方式。这意味着,判断你所看到的内容是文件系统的一般属性,还是某个特定应用程序的属性可能会变得困难。你在调查职业中的经验越多,当然会越擅长区分这些情况,但对于初入职场的调查员而言,这一点尤其值得注意。
除了基本的文件系统挑战,Windows 系统不断更新的方式也可能带来进一步的数字取证调查障碍。曾在运行 Windows 7 的机器上有效的方法,可能在运行 Windows 8.1 的机器上不起作用;Windows 10 则是一个充满新兴且有趣的取证元素的雷区(更不用说它带来的隐私问题,这些问题促使越来越多的用户实施自己的数据模糊化和个人隐私保护措施)。更糟糕的是,如果你碰到一台太旧的机器,现代的取证软件可能都忘记如何分析它了!
Windows 10 的运行方式对取证检查员尤为重要,不仅因为它被强制推广到全球用户,而且因为组织结构发生了显著变化。我们将在本书末尾更详细地讨论这一点,在那里将有一个完整的章节专门讨论运行 Windows 10 的机器的取证分析,但总体来说,从取证的角度来看,不同之处在于应用程序和程序不仅仅有不同的名称;它们的工作方式也略有不同。最终用户越来越希望拥有更轻便、快速运行的设备,使他们的工作和个人生活更加便利,这意味着,反过来,微软等技术公司正在与其他实体合作,使个人电脑不再是一个独立的设备,而更像是一个访问存储在其他地方的数据的门户。完全有可能扣押一个设备,其中文档存储在 Google Drive 上;Skype 上的语音和视频通话通信;Instagram 是在 PC 上访问的应用程序,而不仅仅是在智能手机上;Facebook 不是通过互联网浏览器访问的网站,而是一个独立的应用程序。
尽管我们已经讨论过有关国际云数据存储的法律挑战,但拥有如此丰富的独立应用程序来分析案件使得情况变得更加复杂。用户还可以添加或创建自己的程序,这使得调查方法变得越来越复杂,通常是一个迷宫般的调查方法。
因此,尽快缩小调查范围变得越来越必要,找出用户可能需要执行正在调查的活动的应用程序和服务的种类。再次强调,这并不总是容易的;我们只能尽力而为!
对于数字取证调查,现在比以往任何时候都更加重要的是分类、国际合作以及调查人员对技术的理解。在Windows 取证手册中,我们希望为您提供一个基础,让您可以构建自己的调查技术。
-
www.netmarketshare.com/operating-system-market-share.aspx?qprid=10&qpcustomd=0
,访问日期为 07/02/2017 -
dfrws.org/sites/default/files/session-files/pres-tor_forensics_on_windows_os.pdf
,访问日期为 09/02/2017 -
articles.forensicfocus.com/2016/05/02/the-investigative-challenges-of-live-streamed-child-abuse/
,访问日期为 09/02/2017
第二章:Windows 内存获取与分析
本章将涵盖以下内容:
-
使用 Belkasoft RAM Capturer 进行 Windows 内存获取
-
使用 DumpIt 进行 Windows 内存获取
-
使用 Belkasoft Evidence Center 进行 Windows 内存镜像分析
-
使用 Volatility 进行 Windows 内存镜像分析
-
Windows 版本的差异
介绍
内存分析是一个相对较新的领域,但它越来越相关。内存镜像可以像物理图像一样获取,但使用不同的工具来实现,其中一些将在本节中讨论。
图像可以以多种格式存储,具体取决于用于获取图像的工具。一旦调查员获取了图像,他们就可以分析其中的数据。
与内存取证相关的主要挑战之一是数据保存。尽管在某些调查中,您唯一的选择可能是关闭系统然后获取其中的数据,但实际上这会影响到可能稍后对案件有重要意义的其他潜在数据源。因此,在决定选择哪种方法之前,必须充分了解您所调查的现场情况以及案件的具体需求。每次与系统互动时,您都会因在场而改变某些东西。然而,内存获取可以帮助减少调查员对收集的数据的影响,因为内存镜像会在特定时刻对易失性内存进行采样,从而创建一种可以稍后分析的快照。
在调查员到达现场时,如果机器仍然开机,系统中的内存此时是易失的。这意味着,如果您能够在当时获取内存镜像,您将能够看到在获取镜像时计算机内存的快照。这非常有用,特别是如果嫌疑人刚刚逃离现场或在现场被捕。
如果您想要获取易失性内存,通常需要在计算机上拥有管理员权限,除非您使用硬件解决方案。一个这样的解决方案是CaptureGUARD 物理内存获取硬件。它需要在系统上安装一个小的 CaptureGUARD 驱动程序,并创建一个标准的 WinDD 格式内存转储。您可以在图 2.1 中看到其中一种设备。
图 2.1. ExpressCard
换句话说,内存取证是一个复杂且容易变化的领域。在选择在现场使用哪些工具之前,您需要对所使用的工具集有透彻的了解,并了解它们可能对易失性内存产生的影响。然而,如果您确实成功获取了内存镜像,它可以为您的案件提供大量有用的信息。
使用 Belkasoft RAM Capturer 进行 Windows 内存获取
Belkasoft RAM Capturer 是任何数字取证检查员必备的免费工具。它体积小、易于使用,能够从 Windows 系统中获取内存,包括 Windows 10,即使它们被活跃的反调试或反转储保护系统保护。
准备就绪
你有两个下载工具的选项。如果你是 Belkasoft 的客户并且拥有 Belkasoft Evidence Center 许可证,去你的客户门户,你可以在“免费产品”部分找到 Belkasoft RAM Capturer 的下载链接。如果你不是客户,只需访问 Belkasoft 网站上的“下载”部分,选择你想下载的产品——在我们的案例中是 Belkasoft Live RAM Capturer——并填写一个简短的联系信息表格。下载后,一个链接将会发送到你提供的电子邮件。
准备闪存驱动器以进行获取的步骤如下:
-
必须有足够的空间来存储内存镜像。
-
必须通过擦除来消毒。
-
将你从下载的压缩包中提取的两个文件夹放入闪存驱动器。
别忘了为获取准备闪存驱动器。首先,它必须有足够的空间来存储内存镜像。其次,它必须通过擦除进行消毒。最后,将从下载的压缩包中提取的两个文件夹放入闪存驱动器。
如何操作…
使用 Belkasoft Ram Capturer 进行 Windows 内存获取的步骤如下:
-
你必须做的第一件事是了解你正在处理的是哪种系统,x32 还是 x64。你可以很容易地通过右键点击计算机并选择“属性”来查看。在我们的案例中,它是 x64。因此,我们选择
RamCapture64.exe
。 -
启动后,我们将获得有关物理内存页面大小及其总大小的信息。
-
现在选择输出文件夹路径,确保它是你的闪存驱动器,而不是本地系统驱动器。
-
然后只需点击“Capture”!
图 2.2。使用 Belkasoft RAM Capturer 进行内存获取
结果是我们得到一个.mem
扩展名的文件,大小与物理内存的总大小相同。默认情况下,文件名是获取日期,但我们强烈建议你重新命名它,并添加更多的信息以便识别:操作系统版本、版本、计算机名称和其他信息。
就这样!该镜像已准备好,可以使用内存取证工具进一步分析。
它是如何工作的…
Belkasoft RAM Capturer 在内核模式下运行(不像其他一些获取工具那样在用户模式下运行),借助 32 位和 64 位内核驱动程序。它以取证上可靠的方式提取整个物理内存,即使内存被保护,也会保存为一个.mem
扩展名的文件。
另见
Belkasoft RAM Capturer 页面在 Belkasoft 网站上的链接:belkasoft.com/ram-capturer
使用 DumpIt 进行 Windows 内存获取
DumpIt 是来自 Comae Memory Toolkit 的免费内存成像工具。它是 Win32dd 和 Win64dd 的融合体,合并在一个可执行文件中。它非常易于使用:即便是非技术人员在紧急情况下也能使用它。DumpIt 支持所有现代 Windows 版本,从 XP 到 10,既支持 32 位也支持 64 位。而且,这个工具有一个非常重要的功能:它在获取过程中显示目录表基址和调试数据结构的地址。
准备工作
要获取免费的 DumpIt 副本,访问 Comae Technologies 的网站并点击 GET TOOLS。填写一些信息,包括你的名字、姓氏、公司名称、电子邮件地址、电话号码和网站,你将通过电子邮件收到下载链接。别忘了稍后将该工具放入已擦除的外部硬盘中。
如何操作……
这次,我们无需知道我们处理的是哪种操作系统——是 32 位还是 64 位。正如之前所说,DumpIt 是 Win32dd 和 Win64dd 的融合体,合并在一个可执行文件中。所以,只有两个步骤:
-
将外部硬盘插入目标系统
-
启动
DumpIt.exe
并输入y
以开始获取过程
图 2.3. 使用 DumpIt 进行内存获取
获取结果后,你将得到两个文件:一个 DMP 扩展名的文件和一个 JSON 扩展名的文件。第一个文件是目标系统的内存转储,文件名中包含计算机名称、日期和时间(UTC),第二个文件是转储信息,包含从取证角度来看非常重要的信息。它包括文件大小、系统架构类型(32/64)、KdCopyDataBlock、KdDebuggerData、kdpDataBlockEncoded、sha256 哈希值等等。所以,DMP 文件已经准备好,可以使用你选择的内存取证软件进行分析了。
它是如何工作的……
由于 DumpIt 是 Win32dd 和 Win64dd 的融合,它能够自动检测系统架构类型,并创建一个内存快照和一个 JSON 格式的文件,包含所有你需要的分析信息,可用于进一步通过内存取证工具进行分析,如 Volatility、Rekall、Belkasoft Evidence Center 等。
另见
Comae Memory Toolkit(DumpIt 和 Hibr2Bin 属于其中一部分)的网页:
使用 Belkasoft Evidence Center 分析 Windows 内存镜像
在前面的教程中,我们成功创建了两个内存取证镜像,一个使用 Belkasoft Live RAM Capturer,另一个使用 DumpIt。现在是时候进行分析了。让我们从第一个镜像开始,使用 Belkasoft Evidence Center 进行分析。
Belkasoft Evidence Center 是一款强大的数字取证工具,能够解析不仅来自内存镜像的数据,还能解析来自计算机硬盘和移动设备的镜像数据。从内存转储中,它可以提取出有价值的证据,如社交网络、即时通讯、聊天室、网页邮件系统的通信残留数据、云服务数据、网页浏览痕迹等。
准备工作
如果您没有有效的 Belkasoft Evidence Center 许可证,您可以从官方网站下载一个功能齐全的试用版。为此,请访问 Belkasoft 网站的下载部分,选择您想下载的产品,在我们的例子中是 Belkasoft Evidence Center(试用版) - 并提供您的联系信息,包括您的名字、姓氏、电子邮件、公司和国家。在下载后,下载链接将发送到您的电子邮件。如果您是持证用户,只需进入客户门户并下载最新版本的产品。
如何操作…
使用 Belkasoft Evidence Center 分析 Windows 内存映像的步骤:
-
为此,请在“打开案件”窗口中点击“新建”。现在,您需要填写几个字段:
-
案件名称 - 通常我们使用案件编号和年份作为案件名称,但这次由于是为测试目的创建,我们将其命名为
Belkasoft Memory Forensics Test
。 -
根文件夹 - 在此,您应选择案件数据存放的文件夹。就我们而言,是 D: 驱动器。
-
案件文件夹 - 此字段会根据前两个字段自动填写,因此在我们的例子中,它是
D:\Belkasoft Memory Forensics Test
。 -
调查员 - 在此字段中输入您的姓名。
-
时区 - 选择正确的时区非常重要。如果您已经知道正确的时区,请选择它。如果不确定,我们建议选择 UTC +00:00。就我们而言,我们知道时区,所以可以选择正确的时区(UTC +03:00)。
-
描述 - 如果您想为您的数字证据项添加描述,请在此字段中填写。我们使用的描述是:
解析使用 Belkasoft Live RAM Capturer 创建的内存映像用于测试目的
。
-
图 2.4. 在 Belkasoft Evidence Center 中创建新案件
- 点击“确定”,您将看到下一个窗口 - 添加数据源。
Belkasoft Evidence Center 支持不同种类的证据来源,从物理驱动器和驱动器映像,到移动备份,当然还有内存映像,包括 pagefile.sys
和 hiberfil.sys
。
因为我们现在讨论的是内存取证,让我们选择之前使用 Belkasoft RAM Capturer 获取的映像作为数据源。
图 2.5. 在 Belkasoft Evidence Center 中将之前获取的内存映像作为数据源添加
- 点击“下一步”选择您要搜索的数据类型。为了测试,我们选择了所有可用的数据类型,但您可以选择您真正需要的,以减少处理时间。
别忘了进入高级选项并启用 BelkaCarving - 它将帮助您恢复碎片化的数据,例如图片。
图 2.6. 在 Belkasoft Evidence Center 中选择数据类型
- 好的,我们准备好开始解析内存映像了 - 只需点击“完成”。
BEC 花了大约一个小时来解析和雕刻该镜像,最终我们得到了令人印象深刻的结果:9728 个网页浏览器证据,2848 张图片,74 个聊天证据,等等。
图 2.7. 使用 Belkasoft Evidence Center 处理内存镜像的结果
如您所见,您只需点击几下,就可以从内存镜像中提取出大量有价值的数字证据。因此,如果您能够访问正在运行的系统,请养成捕获内存镜像的习惯。例如,这可能帮助您恢复通过匿名工具(如 Tor 浏览器)浏览的历史记录,而这些工具在犯罪分子中广泛使用,也能找出其他可能只存在于易失性内存中的重要数字证据。
它是如何工作的…
Belkasoft Evidence Center 解析内存镜像结构并提取可用数据,将其放入相应类别。BelkaCarving 选项允许该工具重建碎片化的数据,例如图像。
另请参见
Belkasoft 官网上的 Belkasoft Evidence Center 页面: belkasoft.com/ec
BelkaCarving: ru.belkasoft.com/en/bec/en/BelkaCarving.asp
使用 Volatility 对 Windows 内存镜像进行分析
Volatility 框架是一个开源工具集,使用 Python 编写,用于从内存镜像中提取数字证据。这次,我们将使用之前通过 DumpIt 获取的第二个内存镜像作为数据源,向您展示如何使用该工具集进行内存取证。
准备工作
Volatility 框架是一个开源工具包,因此它是跨平台的,这意味着您可以使用任何操作系统 - Windows、Linux 或 macOS。当然,您可以从源代码构建这些工具,但也有所谓的独立可执行文件,适用于所有上述操作系统。由于本手册是关于 Windows 操作系统和内存转储的取证检查,我们将分析从 Windows 10 收集的数据,并且我们将使用 Windows 独立可执行文件。
在编写本文时,Volatility 的最新版本是 2.6. 在该版本中,改进了对 Windows 10(包括 14393.447)的支持,同时增加了对 Windows Server 2016、macOS Sierra 10.12 和带有 KASLR 内核的 Linux 的支持。
要下载工具集,请访问 Volatility 框架官网,使用 Releases 标签选择最新版本,在我们的案例中是 2.6. 现在,您只需解压刚刚下载的 volatility_2.6_win64_standalone.zip,您就可以开始使用了。
如何操作…
为了展示 Volatility 的强大功能,我们决定使用一份已知恶意软件感染系统的内存镜像——Stuxnet。为什么这么做?因为这份内存镜像是公开可用的,您可以下载它并用来进行培训。
首先,让我们收集一下关于我们镜像的信息。
-
为此,请启动
cmd.exe
。 -
切换到包含 Volatility 独立可执行文件的目录,并使用
imageinfo
插件:
volatility_2.6_win64_standalone.exe -f
X:stuxnet.vmem imageinfo
Volatility Foundation Volatility Framework 2.6
INFO : volatility.debug : Determining profile based
on KDBG
search...
Suggested Profile(s) : WinXPSP2x86,
WinXPSP3x86 (Instantiated with WinXPSP2x86)
AS Layer1 : IA32PagedMemoryPae (Kernel AS)
AS Layer2 : FileAddressSpace (X:stuxnet.vmem)
PAE type : PAE
DTB : 0x319000L
KDBG : 0x80545ae0L
Number of Processors : 1
Image Type (Service Pack) : 3
KPCR for CPU 0 : 0xffdff000L
KUSER_SHARED_DATA : 0xffdf0000L
Image date and time : 2011-06-03 04:31:36 UTC+0000
Image local date and time : 2011-06-03 00:31:36
-0400
imageinfo
插件返回了两个建议的配置文件。我们知道此镜像来自运行 Windows XP Service Pack 3 的系统,因此正确的配置文件是 WinXPSP3x86。
现在我们知道了正确的配置文件,可以将其作为选项来收集有关感染机器上运行的进程的信息。
- 为此,我们可以使用
pslist
插件:
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem
--
profile=WinXPSP3x86 pslist
图 2.8. Volatility pslist 插件输出
你看到什么可疑的地方吗?是的,有三个 lsass.exe
进程,这也是 Stuxnet 感染的迹象之一。
通常情况下,应该只有一个 lsass.exe
进程在运行,因此我们需要确定哪两个是恶意的。
- 看看图 2.8 中的时间戳。三者中有两个进程是在 2011 年启动的。很奇怪,不是吗?现在让我们使用
pstree
插件:
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem -- profile=WinXPSP3x86 pstree
图 2.9. Volatility pstree 插件输出
我们的可疑进程 lsass.exe
通常是由 winlogon.exe
启动的。
-
让我们看看图示:只有一个
lsass.exe
是由winlogon.exe
启动的——PID 为 680;另外两个是由services.exe
启动的!因此,PID 为868
和1928
的lsass.exe
进程可能是恶意的。 -
我们有两个潜在的恶意进程。让我们使用
dlllist
插件检查这些进程加载的 DLL:
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem
--
profile=WinXPSP3x86 -p 868
图 2.10. Volatility dlllist 插件输出,显示 PID 为 868 的可疑进程
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem
profile=WinXPSP3x86 -p 1928
图 2.11. Volatility dlllist 插件输出,显示 PID 为 1928 的可疑进程
-
看看图 2.11。有什么可疑的地方吗?是的!根据 F-Secure 网站上的 Stuxnet 威胁描述,一个加密的 DLL 文件应该被注入到一个进程中,并且它的名称结构是:[normaldll].ASLR.[random]。
-
看起来熟悉吗?我们发现了另一个 Stuxnet 的痕迹——
KERNEL32.DLL.ASLR.0360b7ab
。
还有一个非常有用的 Volatility 插件——malfind
。这个插件帮助数字取证检查员在用户模式内存中发现隐藏或注入的代码/DLL。让我们用它来检查我们可疑的 lsass.exe
进程:
volatility_2.6_win64_standalone.exe -f X:stuxnet.vmem
--
profile=WinXPSP3x86 malfind -p 868 --dump-dir
X:Stuxnet
图 2.12. Volatility malfind 插件输出,显示 PID 为 868 的可疑进程的一部分
如您所见,我们还使用了 --dump-dir
选项将 DLL 导出到一个文件夹。之后,我们可以将它们上传到 VirusTotal 等地方检查。当然,绝大多数 DLL 都被检测为恶意。例如,process.0x81c47c00.0x80000.dmp
,它是从 PID 为 1928
的 lsass.exe
中提取的,被 Dr.Web Antivirus 检测为 Trojan.Stuxnet.1。
有许多其他 Volatility 插件可供使用。您可以在 Volatility 基金会网站上的文档中了解更多有关它们的信息。
它是如何工作的…
以下列表解释了配方中使用的插件。
-
Imageinfo
:这个插件收集关于你正在分析的内存映像的一些基本信息:操作系统、服务包、硬件架构;还包括有用的信息,如 DTB 地址、KDBG 地址和映像创建的时间戳。 -
Pslist
:这个插件显示系统中的进程,包括偏移量、进程名称、进程 ID、父进程 ID、线程数、句柄数、进程启动和退出的日期/时间、会话 ID 以及进程是否为 WoW64 进程。 -
Pstree
:这个插件的功能与pslist
相同,但以树形结构显示进程列表。它使用缩进和句点来表示子进程。 -
Dlllist
:这个插件会显示进程加载的 DLL,或者如果没有使用-p
或--pid
开关,则显示所有进程的 DLL。 -
Malfind
:这个插件允许检查员检测并提取用户模式内存中隐藏或注入的代码/DLL,以便进一步进行杀毒扫描和分析。
另见
Volatility 文档:github.com/volatilityfoundation/volatility/wiki
一个被 Stuxnet 感染的系统的内存映像:github.com/ganboing/malwarecookbook
Stuxnet 威胁描述:www.f-secure.com/v-descs/trojan-dropper_w32_stuxnet.shtml
Windows 版本的变种
如你在第一章所知,现如今我们有多种不同版本的 Windows 操作系统,它们被个人和企业广泛使用。当然,这对 Windows 操作系统的取证检查,包括 Windows 内存取证,产生了影响。
准备就绪
了解 Windows 版本及其类型非常重要,无论是在获取还是分析阶段。收集此信息有几种方法,我们将在本章中介绍一些。
如何操作…
发现计算机运行的是哪个版本的 Windows,最简单的方法是按照以下步骤进行:
-
点击开始菜单。
-
进入运行。
-
在搜索框中输入
winver
并按 Enter。
这将在安装了 Windows 7 或更早版本的机器上工作。对于 Windows 8 及之后的版本:
-
你需要按住Windows键并同时按下R
-
在弹出的框中输入
winver
并按 Enter
这将打开一个小的 Windows 关于框,提供有关版本的信息以及构建号:
图 2.13. 关于 Windows 框
为了收集更多信息,请执行以下步骤:
-
进入开始菜单
-
右键点击计算机并从上下文菜单中选择属性
此外,你还可以在桌面上找到我的电脑、计算机或此 PC 的快捷方式,右键点击其中任何一个并从上下文菜单中选择属性:
图 2.14. 计算机属性
正如图 2.14 所示,使用这项技术,你可以收集更多关于你所处理的机器的信息,包括服务包、系统类型、计算机名称等。
还有更多…
如果你计划使用 Volatility 进行内存取证分析(我们强烈推荐使用它,因为它是功能最强大的工具,拥有大量插件,而且它是免费且开源的),选择正确的配置文件非常重要。为此,你需要知道系统类型、操作系统版本和构建号。正如你在之前的示例中学到的,如果在采集阶段没有正确记录这些信息,imageinfo
插件可以帮助你完成这项任务。
表 2.1 包含了在撰写本文时,最新版本的 Volatility 框架中添加的配置文件信息。
操作系统 | 版本 | 配置文件 |
---|---|---|
Windows 10 x64 | 10.0.10586.306 | Win10x64_10586 |
Windows 10 x64 | 10.0.14393.0 | Win10x64_14393 |
Windows 10 x86 | 10.0.10586.420 | Win10x86_10586 |
Windows 10 x86 | 10.0.14393.0 | Win10x86_14393 |
Windows Server 2008 R2 SP1 x64 | 6.1.7601.23418 | Win2008R2SP1x64_23418 |
Windows Server 2008 R2 x64 | 6.3.9600.18340 | Win2012R2x64_18340 |
Windows 7 SP1 x64 | 6.1.7601.23418 | Win7SP1x64_23418 |
Windows 7 SP1 x86 | 6.1.7601.23418 | Win7SP1x86_23418 |
Windows 8 x64 | 6.3.9600.18340 | Win8SP1x64_18340 |
表 2.1. Volatility 2.6 配置文件列表
此外,需要注意的是,在所有 x64 的 Windows 8/2012(及更高版本)上,KDBG(它包含了正在运行的进程和加载的内核模块列表)默认是加密的,因此你应该使用 KdCopyDataBlock 的虚拟地址。两者的地址都可以通过 kdbgscan Volatility 插件收集。
第三章:Windows 磁盘镜像获取
在本章中,我们将介绍以下几种操作方法:
-
使用 FTK Imager 获取 E01 格式的磁盘镜像
-
使用 dc3dd 获取 RAW 格式的磁盘镜像
-
使用 Arsenal Image Mounter 挂载取证镜像
介绍
在开始分析来源证据之前,首先需要对其进行镜像。镜像是一个取证过程,其中会创建硬盘的精确副本。这是一个重要的步骤,尤其是在证据需要提交法庭时,因为取证调查员必须能够证明他们没有以任何方式篡改证据。
取证镜像一词可以指物理镜像或逻辑镜像。物理镜像是与参考磁盘完全一致的精确副本,而逻辑镜像是该磁盘中某一卷的复制。在一般情况下,逻辑镜像展示的是机器用户所看到和处理的内容,而物理镜像则提供了设备在更高层面如何工作的更全面的概述。
哈希值是用来验证获取的镜像真实性的。哈希值本质上是加密的数字指纹,能表明某个项目是否是另一个项目的精确副本。即使是数据的最小修改,也会生成完全新的哈希值,从而表明两个项目不相同。当取证调查员获取硬盘镜像时,他们应该为原始硬盘和获取的镜像生成哈希值。一些取证软件会为你自动完成这项操作。
市面上有许多可以用来制作硬盘镜像的工具,其中一些是免费的开源工具。然而,对于取证分析员来说,制作硬盘镜像的最流行方式是使用一些知名的取证软件厂商的解决方案。这是因为能够解释镜像是如何获取的及其完整性至关重要,尤其是当你处理的案件需要提交法庭时。
一旦你拥有了镜像,就可以在不直接干扰设备本身的情况下分析设备中的数字证据。
在本章中,我们将介绍几种工具,这些工具可以帮助你制作 Windows 磁盘镜像,并带领你完成磁盘镜像获取过程。
使用 FTK Imager 获取 E01 格式的磁盘镜像
FTK Imager 是一款由 AccessData 提供的镜像和数据预览工具,允许检查员不仅可以创建多种格式的取证镜像,包括 RAW、SMART、E01 和 AFF,还可以以取证合理的方式预览数据源。在本章的第一部分,我们将展示如何创建一个来自 Windows 系统的 E01 格式硬盘取证镜像。
E01 或 EnCase 的证据文件是执法机构使用的标准取证映像格式。这些映像由一个包含案件信息的头部组成,包括采集日期和时间、检查员姓名、采集备注和密码(可选),一个驱动器的逐位副本(由数据块组成,通过自己的 CRC 或循环冗余校验验证),以及一个包含位流的 MD5 哈希值的尾部。
准备中
首先,让我们从 AccessData 的官方网站下载 FTK Imager。为此,前往“产品与服务”标签,然后点击“产品下载”。接下来选择“数字取证”,然后选择 FTK Imager。在编写本文时,最新版本是 3.4.3,所以点击右侧的绿色“下载页面”按钮。现在你应该能看到下载页面。点击“立即下载”并填写表单。之后,下载链接将发送到你提供的电子邮件地址。
安装过程非常简单;你只需要点击几次“下一步”,因此我们在本配方中不再详细介绍。
如何操作…
有两种方式启动驱动器成像过程:
- 使用工具栏中的“创建磁盘映像”按钮(图 3.1)
图 3.1. 工具栏上的“创建磁盘映像”按钮
- 使用文件菜单中的“创建磁盘映像…”选项(图 3.2)
图 3.2. 文件菜单中的“创建磁盘映像…”选项
你可以选择任何你喜欢的选项。
第一个窗口是选择源。在这里,你有五个选项:
-
物理驱动器:允许你选择一个物理驱动器作为源,包括所有分区和未分配空间。
-
逻辑驱动器:允许你选择逻辑驱动器作为源,例如
E:\ drive
。 -
映像文件:允许你选择一个映像文件作为源,例如,如果你需要将你的取证映像从一种格式转换为另一种格式。
-
文件夹内容:允许你选择一个文件夹作为源。当然,不会包括已删除的文件。
-
Fernico 设备:允许你从多个 CD/DVD 恢复映像。
当然,我们希望成像整个驱动器,以便能够处理已删除的数据和未分配空间,因此:
- 让我们选择物理驱动器选项。
证据源不能以任何方式被更改,因此请确保使用硬件写保护器。例如,你可以使用 Tableau 的写保护器。这些设备可以在不修改数据的情况下获取驱动器内容。
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/75543208-243e-4fcc-b45e-936e516dbc78.png图 3.3. FTK Imager 选择源窗口
-
点击“下一步”,你将看到下一个窗口——选择驱动器。
-
现在,你应该从下拉菜单中选择源驱动器,在我们的案例中是 \.\PHYSICALDRIVE2。
图 3.4. FTK Imager 选择驱动器窗口
-
现在选择了源驱动器,点击“完成”。
-
下一个窗口是——创建图像。我们很快会回到这个窗口,但现在,点击“添加…”。
-
现在是时候选择目标图像类型了。由于我们决定以 EnCase 的证据文件格式创建图像,因此选择 E01。
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/120a8641-19a7-49d8-8261-b015321ea3e2.png图 3.5. FTK Imager 选择图像类型窗口
- 点击“下一步”,你将看到证据项信息窗口。
在这里,我们有五个字段需要填写:案件编号、证据编号、唯一描述、检查员和备注。所有字段都是可选的。
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/a692c888-f994-4461-9315-92c67af89c30.png图 3.6. FTK Imager 证据项信息窗口
-
填写字段,或者如果你愿意,可以跳过它们,然后点击下一步。
-
现在选择图像目标。你可以使用浏览按钮来选择。
-
此外,你还需要填写图像文件名。
如果你希望你的取证图像被分割,请选择一个分段大小(以兆字节为单位)。E01 格式支持压缩,因此如果你希望减小图像大小,可以使用此功能。正如图 3.7 所示,我们选择了 6。如果你希望图像中的数据得到保护,可以使用 AD 加密功能。
AD 加密是整个图像的加密,因此不仅原始数据被加密,任何元数据也会被加密。图像的每个段或文件都使用 AES-256 加密算法和随机生成的图像密钥进行加密。
图 3.7. FTK Imager 选择图像目标窗口
我们快完成了。
-
点击完成,你将再次看到创建图像窗口。
-
现在查看窗口底部的三个选项。
验证过程非常重要,因此请确保勾选“创建后验证图像”选项;这有助于你确保源数据和图像一致。“预计算进度统计”选项也非常有用:它将在成像过程中显示预计到达时间。最后一个选项将为你创建图像中所有文件的目录列表,但当然,这需要时间,因此只有在需要时才使用它。
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/c2ab361d-0aca-43b1-8a0c-243b3fe3b5a3.png图 3.8. FTK Imager 创建图像窗口
- 现在你只需要点击“开始”。
很棒,成像过程已开始!一旦图像创建完成,验证过程就会开始。
- 最后,你将看到一个驱动器/图像验证结果窗口,类似于图 3.9 所示的窗口。
图 3.9. FTK Imager 驱动器/图像验证结果窗口
如你所见,在我们的案例中,源数据和图像是相同的:两者的哈希值匹配。在图像所在的文件夹中,你还会找到一个信息文件,其中包含重要信息,如驱动器型号、序列号、源数据大小、扇区计数、MD5 和 SHA1 校验和等。
它是如何工作的……
FTK Imager 使用你选择的物理驱动器作为源,并创建一个逐位镜像,格式为 EnCase 的证据文件格式。在验证过程中,会比较镜像和源驱动器的 MD5 和 SHA1 哈希值。
查看更多
FTK Imager 下载页面:
accessdata.com/product-download/digital-forensics/ftk-imager-version-3.4.3
FTK Imager 用户指南:
ad-pdf.s3.amazonaws.com/Imager/3_4_3/FTKImager_UG.pdf
使用 dc3dd 进行 RAW 格式的驱动器采集
DC3DD(由 Jesse Kornblum 开发)是经典 GNU dd 工具的一个修补版,加入了一些计算机取证功能。例如,支持使用多种算法进行哈希处理,如 MD5、SHA-1、SHA-256 和 SHA-512,显示采集过程的进度等。
准备工作
你可以在 SourceForge 上找到适用于 Windows 的 DC3DD 编译版。只需下载 ZIP 或 7z 压缩包,解压后就可以使用了。
如何操作…
使用 dc3dd 进行 RAW 格式驱动器采集的步骤如下:
- 打开 Windows 命令提示符,切换到(可以使用 cd 命令)包含
dc3dd.exe
的目录,并输入以下命令:
dc3dd.exe if=\\.\PHYSICALDRIVE2 of=X:\147-2017.dd hash=sha256
log=X:\147-2017.log
- 按下 Enter 键,采集过程将开始。
当然,你的命令会稍有不同,接下来让我们看看它的每个部分代表什么:
-
if - 代表输入文件。最初,dd 是一个 Linux 工具,假如你不知道,Linux 中的一切都是文件。正如你在我们的命令中看到的那样,我们在这里输入了物理驱动器 2(这是我们希望镜像的驱动器,但在你的情况下,可能是另一块驱动器,具体取决于连接到工作站的驱动器数量)。
-
of - 代表输出文件。在这里,你应该输入镜像的 RAW 格式保存位置。在我们的例子中,是
X:\ drive
和147-2017.dd
文件。 -
hash - 如前所述,DC3DD 支持四种哈希算法:MD5、SHA-1、SHA-256 和 SHA-512。我们选择了 SHA-256,但你可以选择任何你喜欢的算法。
-
log - 在这里,你应该输入日志的保存位置。一旦采集完成,你将在这个文件中找到镜像版本、镜像哈希等信息。
它是如何工作的…
DC3DD 创建了源驱动器的逐位镜像,格式为 RAW,因此镜像的大小将与源驱动器相同,并且它使用考察者选择的算法来计算镜像的哈希值,在我们的例子中是 SHA-256。
另见
DC3DD 下载页面:
sourceforge.net/projects/dc3dd/files/dc3dd/7.2%20-%20Windows/
使用 Arsenal Image Mounter 挂载取证镜像
Arsenal Image Mounter 是一款由 Arsenal Recon 开发的开源工具。它可以帮助数字取证检查员在 Windows 上挂载取证镜像或虚拟机磁盘。它支持 E01(和 EX01)以及 RAW 取证镜像,因此你可以使用我们在前面的教程中创建的任何镜像。
需要特别注意的是,Arsenal Image Mounter 会将磁盘镜像的内容作为完整磁盘进行挂载。该工具支持你在 Windows 驱动器上找到的所有文件系统:NTFS、ReFS、FAT32 和 exFAT。同时,它对镜像提供了临时写入支持,这是一个非常有用的功能,例如,如果你想从你正在检查的镜像中启动系统。
准备工作
访问 Arsenal Recon 网站上的 Arsenal Image Mounter 页面,并点击下载按钮下载 ZIP 压缩包。在写作时,工具的最新版本是 2.0.010,因此在我们的案例中,压缩包的名称为 Arsenal_Image_Mounter_v2.0.010.0_x64.zip。将其解压到你选择的位置,即可使用,无需安装。
如何操作…
在 Arsenal Image Mounter 中,有两种方法可以选择一个镜像进行挂载。
-
你可以使用文件菜单(并选择 挂载镜像…)或
-
挂载镜像按钮,如图 3.10 所示
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/7a959659-7f41-48b3-a2e3-bf12ddae565f.png图 3.10. Arsenal Image Mounter 主窗口
-
当你从文件菜单选择挂载镜像… 选项或点击挂载镜像按钮时,打开窗口会弹出 - 在这里你应该选择一个镜像进行挂载。
-
你接下来会看到的是挂载选项窗口,如图 3.11 所示。
图 3.11. Arsenal Image Mounter 挂载选项窗口
如你所见,这里有一些选项:
-
只读 - 如果选择此选项,镜像将以只读模式挂载,因此不允许进行写操作。(你还记得不能以任何方式修改证据吗?当然,它已经是镜像文件,而不是原始驱动器,但无论如何,还是要小心。)
-
虚假磁盘签名 - 如果镜像上找到全零磁盘签名,Arsenal Image Mounter 会向 Windows 报告一个随机的磁盘签名,从而确保镜像正确挂载。
-
临时写入 - 如果选择此选项,镜像将以读写模式挂载,但所有修改不会写入原始镜像文件,而是写入一个临时差异文件。
-
写入原始 - 同样,此选项以读写模式挂载镜像,但这次原始镜像文件将被修改。
-
扇区大小 - 此选项允许你选择扇区大小。
-
创建“可移动”磁盘设备 - 此选项模拟 USB 闪存驱动器的连接。
- 选择你认为需要的选项并点击确定。
我们决定以只读模式挂载镜像。现在,你可以在工具的主窗口中看到一个硬盘图标 - 镜像已挂载。
如果你只挂载了一个镜像并想要卸载它,选择该镜像并点击“移除选中项”。如果你挂载了多个镜像并想要卸载所有镜像,点击“移除全部”按钮。
它是如何工作的…
Arsenal Image Mounter 将取证镜像或虚拟机磁盘挂载为完整磁盘,可以选择只读或读写模式。之后,数字取证检查员即使使用 Windows 资源管理器,也可以访问其中的内容。
另请参见
Arsenal Recon 网站上的 Arsenal Image Mounter 页面:arsenalrecon.com/apps/image-mounter/
第四章:Windows 文件系统分析
在本章中,我们将讨论以下步骤:
-
使用 The Sleuth Kit 进行 NTFS 分析
-
使用 Autopsy 从 NTFS 恢复文件
-
使用 ReclaiMe 文件恢复从 ReFS 恢复文件
-
使用 PhotoRec 进行文件切割
引言
如前言部分所述,Windows 机器使用 NTFS(新技术文件系统)。
使用我们将在本章讨论的工具,你不仅能揭示文件信息,还能了解磁盘布局,包括已删除的文件和未分配的空间。在法医调查中,这可能至关重要,尤其是在用户可能尝试使用反取证方法掩盖其行为的情况下。
一些工具还允许你恢复已删除的文件,恢复它们的完整或部分内容,就像它们被删除前的样子。这当然取决于文件被覆盖的程度,但它仍然是发现嫌疑人不希望你看到的内容的一个有用方法。
在文件的元数据被删除的情况下,文件切割被用作尝试恢复文件内数据的一种方法。这需要多个步骤,大部分步骤将由你选择的调查工具集来执行。通常,首先会通过查看文件头来确定文件类型,然后通过拼接文件碎片来构建出一个更准确的文件内容,重现原本存储在机器上的信息。
有几种解决方案可以处理文件系统分析、文件切割以及文件恢复。在本章中,我们将重点讨论 Autopsy、The Sleuth Kit、ReclaiMe 和 PhotoRec。
使用 The Sleuth Kit 进行 NTFS 分析
The Sleuth Kit 是一组命令行工具(同时也包含一个库),用于磁盘映像的法医分析。这些工具可以帮助你分析卷和文件系统数据(当然是以非侵入性方式)。它是跨平台的,因此你可以使用任何操作系统来使用这个工具集。它支持 RAW 和 E01 格式的磁盘映像,因此你可以使用你在之前步骤中获取的任何映像。这些工具将在你未来的数字取证工作中非常有用:它支持多种文件系统,包括 NTFS、FAT、ExFAT、EXT2、EXT3、EXT4、HFS 等。
准备工作
你可以从 The Sleuth Kit 的官方网站下载 Windows 二进制文件。进入 The Sleuth Kit 部分,点击下载超链接。然后点击 Windows Binaries,下载将开始。目前为止,The Sleuth Kit 的最新版本是 4.4.0,因此我们下载的归档文件名为:sleuthkit-4.4.0.tar.gz。现在,你只需要解压它,就可以开始使用了。
如何操作…
打开 Windows 命令提示符并切换到bin目录(你可以在你解压下载的文件夹中找到它)。让我们从媒体管理层工具开始:
- 你应该做的第一件事是弄清楚你的系统卷类型。当然,Sleuth Kit 中有一个工具可以做到这一点,叫做
mmstat
。我们来在之前获取的一个镜像上使用它:
mmstat X:146-2017.E01
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/4e34db5a-4573-4c53-9cb3-689e751425d4.png图 4.1. mmstat 输出
- 我们现在已经知道系统卷类型,准备使用下一个工具
mmls
。这个工具可以帮助检查员确定磁盘的布局,包括未分配的空间。我们来使用一下它:
mmls -t dos X:146-2017.E01
上述命令的输出如下:
图 4.2. mmls 输出
如你所见,我们收集了大量关于磁盘的有价值信息(如你记得,我们在之前的教程中对硬盘进行了镜像)。现在你已经知道了所有分区和未分配空间的起始扇区、结束扇区和长度。
- 让我们切换到文件系统层工具。为了更好地了解每个分区,我们有
fsstat
工具。要使用它,我们需要分区偏移量。你可以从mmls
的输出中获取它。让我们更深入了解我们拥有的最大分区,它从第 1435658 个扇区开始:
fsstat -o 1435648 X:146-2017.E01
上述命令的输出如下:
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/d7fe328f-e31e-465b-8235-603f975760d3.png图 4.3. fsstat 输出
如你在前面的图中所见,fsstat
收集了有关分区的大量有用信息:卷序列号、簇大小、MFT 的第一个簇、MFT 镜像的第一个簇等等。
MFT(主文件表)包含有关 NTFS 中所有文件、目录和元文件的信息,包括它们的名称、创建时间戳、大小和访问权限。
- 现在让我们来看一下文件名层工具。例如,
fls
工具允许检查员列出目录中已分配和已删除的文件名。同样,我们需要分区偏移量来使用此工具:
fls -o 1435648 X:146-2017.E01
上述命令的输出如下:
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/7f676dfc-6b34-4a26-900a-19672cbb8e10.png图 4.4. fls 输出的一部分
- 让我们更进一步,使用
fls
创建一个bodyfile
。这是一个非常棒的功能,帮助 Windows 取证检查员创建文件活动的时间线。我们来看看怎么创建它:
fls -r -m "/" -o 1435648 X:146-2017.E01 > bodyfile.txt
上述命令的输出如下:
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/95dfa63d-f040-446d-a53e-0a131e9f868e.png图 4.5. 使用 fls 创建的 bodyfile 部分内容
如你所见,我们在命令中添加了两个开关:-r
和-m
。第一个告诉fls
递归目录条目。第二个告诉它使用mactime
输入格式,挂载点为*/*。
- 我们现在已经有了 bodyfile,可以运行
mactime
并创建文件活动的时间线。这样的时间线在 Windows 取证检查中非常有用,尤其是在涉及恶意软件事件的案件中。这里是如何创建它的:
mactime.pl -b bodyfile.txt -d > timeline.csv
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/afcd1357-e82d-4c62-8aee-f2823c89ace6.png图 4.6. 在 Microsoft Excel 中打开的时间线文件
再次,在最后一个命令中,我们有两个需要解释的开关。第一个 -b
指向 mactime
要使用的主体文件。第二个 -d
表示分隔输出,意味着我们可以将其保存为 CSV 文件,并使用 Microsoft Excel 或 OpenOffice Spreadsheets 后续处理(见上图)。此外,如果您想指定时区,可以使用 -z
开关。
工作原理…
以下是主要命令及其功能的列表:
-
mmstat
: 提取系统卷类型的信息 -
mmls
: 提取磁盘布局信息,包括未分配的空间 -
fsstat
: 提取文件系统的信息,包括卷序列号、簇大小等 -
fls
: 提取目录中已分配和已删除文件名的信息 -
mactime
: 基于由fls
创建的主体文件创建文件活动时间线
另请参阅
Sleuth Kit 下载页面:www.sleuthkit.org/sleuthkit/download.php
Sleuth Kit wiki:wiki.sleuthkit.org/index.php?title=Main_Page
使用 Autopsy 从 NTFS 恢复删除的文件
最初,Autopsy 只是 The Sleuth Kit 的图形界面。在之前的教程中,您已经了解了用于文件系统取证分析的命令行工具的收集。然而,自第三个版本以来,它已完全重写,并作为一个独立的数字取证平台提供。它被广泛应用,并成为执法和企业检查员的数字取证工具包的一部分。为什么呢?它易于使用、快速且免费。此外,如果您喜欢编程,可以为 Autopsy 编写自己的模块 - 所需的所有文档都可以在 Sleuth Kit 的网站上免费获得。Basis Technology 还举办了 Autopsy 模块编写比赛,欢迎参与。
准备工作…
再次访问 Sleuth Kit 网站,选择 Autopsy,然后选择下载。目前写作时的最新版本是 4.3.0。提供了 32 位和 64 位版本,您应根据您的系统选择正确的版本(我们已经在之前的一篇教程中向您展示了如何收集此信息)。您将被重定向到 SourceForge,并且下载过程将自动开始。在我们的情况下,我们下载的文件名为 autopsy-4.3.0-64bit.msi。现在您只需双击它并按照相当简单的安装说明进行操作。一旦安装过程完成,您就可以开始使用了。
如何做…
在启动您新安装的数字取证工具后,您会看到的第一个窗口是欢迎界面。这里有三个主要选项:
-
创建新案例 - 此选项将为您创建一个新案例
-
打开最近的案件 - 此选项将打开您上次处理的案件
-
打开现有案件 - 此选项允许您选择工作站上已有的案件之一
图 4.7. Autopsy 欢迎窗口
由于我们刚刚安装了 Autopsy,因此没有任何案件,所以我们的选择是创建新案件选项。现在您将看到一个新建案件信息窗口。
- 在第一步案件信息中,我们有两个字段需要填写;第三个字段会自动完成。您应在第一个字段“案件名称”中输入案件编号或名称,在第二个字段“基础目录”中选择案件文件的目录(使用浏览按钮)。第三个字段会显示案件文件的路径(基础目录+案件名称)。
图 4.8. Autopsy 新建案件信息(案件信息)窗口
- 第二步,附加信息,是可选的:您可以将两个字段留空。但是,通常最好填写它们。第一个字段应包含您的案件编号,第二个字段填写您的姓名。
图 4.9. Autopsy 新建案件信息(附加信息)窗口
-
单击完成,案件将被创建。
-
现在是选择数据源的时机,这里是添加数据源窗口。您首先应该做的是选择数据源类型。有三种可选项:
-
-
镜像或虚拟机文件 - 此选项允许您选择支持格式的取证镜像,或在镜像检查过程中发现的虚拟机磁盘
-
本地磁盘 - 此选项允许您选择连接到工作站的物理驱动器或已挂载的逻辑驱动器(例如,D:)
-
-
- 逻辑文件 - 此选项允许您选择用于分析的文件和文件夹,例如,从挂载的取证镜像中选择
图 4.10. Autopsy 选择数据源窗口
-
别忘了选择正确的时区。
-
在接下来的步骤中,您应选择要运行的导入模块。Autopsy 导入模块分析数据源中的文件并解析其内容。由于本教程的主要目的是展示如何从 NTFS 恢复已删除文件,因此我们只选择了一些模块,包括:
-
-
文件类型识别 - 基于文件的内部签名而非扩展名来识别文件
-
扩展名不匹配检测器 - 利用文件类型识别模块的结果标记那些扩展名与检测到的文件类型不符的文件
-
嵌入式文件提取器 - 提取不同归档格式的数据,包括 DOCX、XLSX、PPTX 等
-
图 4.11. Autopsy 选择数据源(配置导入模块)窗口
-
单击“下一步”,数据源处理将开始。
-
一段时间后,根据数据源的大小,“完成”按钮将变为可用:点击它,您就可以开始分析文件系统。
本教程的重点是教您如何从 NTFS 中恢复已删除的文件。关键是,当文件被删除时,它并没有被擦除,而只是被标记为在文件的 MFT 条目中已删除。因此,直到文件被覆盖之前,它是可以恢复的,而 Autopsy 可以帮助数字取证专家完成这项工作。它甚至会帮您整理出所有已删除的文件:只需进入视图 - 左侧窗格中的已删除文件(树视图)。
图 4.12. 树视图中的已删除文件选项
您可以使用此选项来恢复文件,或通过数据源选项浏览文件系统。已删除的文件在左侧有红色叉号图标。要恢复文件:
-
右键点击文件或文件(预先标记所有您想要恢复的文件)
-
选择提取文件
-
选择目标文件夹
-
点击保存
是的,就是这么简单!
它是如何工作的…
Autopsy 会检测到 MFT 中标记为已删除的文件,并将它们分类出来,这样数字取证检查员可以找到这些文件并恢复它们。
另见
Autopsy 下载页面:sleuthkit.org/autopsy/download.php
Autopsy 用户指南:sleuthkit.org/autopsy/docs/user-docs/3.1/index.html
使用 ReclaiMe 文件恢复从 ReFS 恢复已删除的文件
ReclaiMe 文件恢复是一款数据恢复软件,能够从多种设备(包括硬盘、内存卡、RAID 阵列和多磁盘 NAS 设备)中恢复已删除的文件。此外,它还支持从大多数文件系统中恢复数据,包括最新的 Windows 文件系统——ReFS 或 弹性文件系统。
准备工作
进入 ReClaiMe 的网站,点击左侧的绿色下载按钮。它将引导您到 ReclaiMe 文件恢复的下载页面,并自动开始下载过程。之后,只需运行安装文件并按照安装说明进行操作。准备好就可以开始了!
如何操作…
在开始之前,最好找到正确的数据源。ReFS 仍在积极开发中,通常仅用于 Windows 服务器。幸运的是,Willi Ballenthin 创建了一些用于测试的 ReFS 镜像,现在已经公开提供。我们可以使用其中之一。
- 启动 ReclaiMe 文件恢复。工具需要一些时间来扫描所有可用的驱动器。完成后,您将进入主窗口,如下图所示:
图 4.13. ReclaiMe 文件恢复主窗口
ReclaiMe 文件恢复不支持 E01 镜像,但这不是问题,因为我们有一个 RAW 格式的镜像。
- 让我们进入磁盘 - 打开磁盘镜像… 选择磁盘镜像并点击打开。现在主窗口中应该也会显示出一个镜像,如下图所示:
图 4.14. ReclaiMe 文件恢复主窗口(磁盘镜像已添加)
- 双击镜像以启动恢复过程。当然,根据镜像的大小,这将需要一些时间。在我们的案例中,镜像足够小,所以不会花太多时间。恢复过程如下图所示:
图 4.15. ReclaiMe 文件恢复图像处理结果
- 现在你可以使用蓝色的保存按钮来保存恢复的文件甚至文件夹。
它是如何工作的…
ReclaiMe 文件恢复处理镜像并列出可用的文件和文件夹,提供计算机取证检查员提取已删除文件的能力。
另见
ReclaiMe 文件恢复网站:www.reclaime.com/
ReFS 示例镜像:www.williballenthin.com/forensics/refs/test_images/
使用 PhotoRec 进行文件雕刻
PhotoRec 是一个广泛用于数字取证检查员的文件雕刻工具。这个工具甚至作为一个模块内置在前面提到的数字取证平台 Autopsy 中。PhotoRec 可以恢复多种类型的文件(超过 480 种文件格式),但是如果你认为这还不够,你可以添加自己的自定义签名,这将帮助该工具恢复更多的数据。
准备就绪
访问 CGSecurity 的网站并点击左侧的下载超链接。你将被重定向到下载页面。现在点击右侧的大绿按钮,下载过程将开始。在撰写本文时,PhotoRec 的最新版本是 7.0,因此我们下载的压缩包名为 testdisk-7.0.win.zip。解压后,你就可以开始使用了。
如何操作…
在开始之前,重要的是要注意 PhotoRec 支持磁盘镜像:不仅支持 RAW 格式,还支持 E01 格式。由于我们是为了取证目的进行数据雕刻,让我们使用在之前某个步骤中获取的 E01 镜像。
- 从管理员组中的帐户启动 Windows 命令提示符,并将目录更改为 testdisk-7.0。使用以下命令:
photorec_win.exe X:52.E01
-
确保你输入了你获取的镜像的路径,因为它可能有不同的名称和位置。
-
你看到的第一个对话框是“选择媒体”。在我们的案例中,我们正在处理一个 E01 镜像,所以我们只有一个选项,所有需要做的就是按 Enter 继续。
图 4.16. PhotoRec 选择媒体对话框
- 现在我们有了分区选择对话框。在我们的案例中,我们只有一个未知类型的分区——这是文件雕刻的完美示例。
图 4.17. PhotoRec 分区选择对话框
- 同时,底部有四个选项:
-
-
搜索 - 开始恢复
-
选项 - 修改恢复选项
-
文件选项 - 修改要恢复的文件类型
-
退出 - 取消恢复
-
- 让我们进入选项。这里有以下内容:
-
-
偏执模式 - 如果启用,会验证恢复的文件,并且无效文件将被拒绝。另一个选项是 bruteforce,如果启用,会尝试恢复碎片化的 JPG 文件。
-
保留损坏文件 - 如果启用,会保留无效文件。如果希望尝试用其他工具修复它们,请使用此选项。
-
专家模式 - 如果启用,允许检验员强制设置块大小和偏移量。
-
低内存 - 如果您的工作站内存不足以避免恢复崩溃,请使用此选项。
-
图 4.18. PhotoRec 选项
- 现在让我们检查文件选项。这里有工具支持的文件类型的长列表。使用 s 按钮来检查所有文件类型或禁用所有文件类型。如果您想启用或禁用一些类型,请使用空格键。保存更改使用 b。
图 4.19. PhotoRec 文件选项
现在我们已经查看了可用的选项,并且准备开始恢复。
- 选择搜索并按 Enter。现在是选择文件系统类型的时候了。我们知道只有两个选项,并且我们的镜像上没有 EXT 分区,因此我们选择 Other.https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/f9cb5e24-e47e-4c6f-ac84-628bf8338a9a.png
图 4.20. PhotoRec 文件系统类型对话框
- 现在我们需要选择恢复文件的目标路径。我们建议在开始文件雕刻过程之前创建一个目录。在我们的情况下,目标文件夹是
X:52-Carved
,如下图所示:
https://github.com/OpenDocCN/freelearn-sec-pt3-zh/raw/master/docs/win-frsc-cb/img/a8f02e8b-cf7b-4eab-8a4d-417df85e4a05.png图 4.21. PhotoRec 选择目标对话框
-
使用 C 按钮启动文件雕刻过程。
-
一旦进程完成,您将拥有一个或多个文件夹(
recup_dir.1
,recup_dir.2
…),其中包含恢复的文件。重要的是注意,在恢复完成之前可以访问这些文件夹。
工作原理…
PhotoRec 逐扇区读取数据源,并找到前十个文件。它使用这些文件来计算每个块经工具对比签名数据库检查后的块/簇大小。
如果文件系统没有损坏,PhotoRec 可以从卷引导记录或超级块获取块/簇大小。
查看更多
PhotoRec 下载页面:www.cgsecurity.org/wiki/TestDisk_Download
PhotoRec 维基页面:www.cgsecurity.org/wiki/PhotoRec
第五章:Windows 阴影副本分析
在本章中,我们将介绍以下内容:
-
使用 ShadowCopyView 浏览和复制实时系统中的 VSC 文件
-
使用 VSSADMIN 和 MKLINK 从磁盘镜像挂载 VSCs
-
使用 Magnet AXIOM 处理和分析 VSC 数据
介绍
阴影副本,也称为卷阴影副本,是在使用运行 NTFS 的机器时,系统在正常操作过程中自动创建的 Windows 文件的备份副本。对于普通计算机用户来说,阴影副本可能比较熟悉,因为它们使得创建 Windows 备份或在出现问题时执行系统恢复成为可能。
这些在数字法医实践中有显而易见的应用,特别是在嫌疑人可能尝试从计算机上删除证据的案件中。通过将系统恢复到之前的状态,或使用法医工具揭示保存在阴影副本位置的文件,法医从业人员可能能够推断出个体试图隐藏的信息。
然而,阴影副本的存在以及法医调查员能够揭示其中包含的信息,并不意味着一定能获得有用的信息。许多文件可能只是包含与案件无关的信息。即使恢复了有用文件的阴影副本,调查员所看到的版本也只是该文件的快照。换句话说,法医分析员只能看到文件的单一版本,而无法看到可能已做过的任何更改。阴影副本常常会被系统覆盖,而且在大多数版本的 Windows 中,可以关闭创建阴影副本的功能,这意味着它们并不是一个万无一失的备用选项。尽管如此,定位、恢复和理解卷阴影副本中包含的数据的能力,仍然是数字法医调查员工具包中的重要部分。本章将演示几种帮助你掌握阴影副本分析的方法。
使用 ShadowCopyView 浏览和复制实时系统中的 VSC 文件
ShadowCopyView 是一个由 NirSoft 开发的简单工具(记住这个名字!他们开发了许多非常有用的小型免费工具,尤其适用于计算机法医),它使数字法医检查员能够浏览 Windows 卷阴影复制服务创建的快照。它甚至支持最新版本的 Windows(例如 Windows 10),并且可以保存在你最喜欢的 USB 驱动器上,这对于实时法医和事件响应非常重要。
准备工作
访问 NirSoft 网站,并点击左侧的“所有实用工具”链接。向下滚动页面,找到 ShadowCopyView 链接并点击它。撰写本文时,工具的最新版本是 1.05. 向下滚动,您将找到两个下载链接:32 位和 64 位版本。我们建议您下载两个版本,根据目标系统使用它们。将下载的压缩包解压到您的闪存驱动器中,准备就绪。
如何操作…
将闪存驱动器连接到目标系统。在我们的案例中,是 Windows 7 x64,因此我们将使用 64 位版本的 ShadowCopyView。该工具会自动检测可用的 VSC(卷影副本)。在我们的案例中,有三个 VSC 可用,如下图所示:
图 5.1. ShadowCopyView 检测到的卷影副本
工具的主窗口由两个窗格组成。第一个窗格显示有关检测到的影子副本的信息,包括名称、资源管理器路径、卷路径、创建时间等。资源管理器路径意味着您可以在 Windows 资源管理器中浏览影子副本。
- 右键单击要在资源管理器中浏览的 VSC,并选择“在 Windows 资源管理器中打开”,或者直接按 F2. 现在它已经在 Windows 资源管理器中打开,如下图所示:
图 5.2. 在 Windows 资源管理器中打开的卷影副本
现在,让我们回到 ShadowCopyView。第二个窗格使您能够浏览可用的影子副本。使用此窗格,您可以导出文件和文件夹。
-
您只需右键单击文件或文件夹,选择“将选定文件复制到…”选项,或者直接按 F8。
-
还有一些其他有用的选项可以使用。例如,如果您更喜欢使用 UTC(协调世界时)时间标准的时间戳,可以使用 GMT(格林威治标准时间)时区。为此,进入“选项”菜单并选择“以 GMT 显示时间”。
协调世界时(UTC)是世界调节时钟和时间的主要标准。例如,俄罗斯欧洲大部分地区使用 UTC +3 小时。
- 此外,如果您想查看影子副本的完整属性列表,可以右键单击它并选择“属性”选项,或者直接按 Alt + Enter。现在您可以在一个窗口中查看所有属性,如下图所示:
图 5.3. 卷影副本的属性
我们要告诉您最后一个非常有用的功能是关键字搜索。
- 进入 编辑 - 查找,或者直接按 Ctrl + F,您将看到查找窗口,如下图所示:
图 5.4. ShadowCopyView 查找窗口
- 如您所见,您还可以选择两个选项。如果必须包含整个单词,请勾选第一个选项;如果需要结果以大写或小写字母返回,请勾选第二个选项。
如何运作…
ShadowCopyView 检测可用的卷影像副本,使得计算机取证检查员能够通过该工具和 Windows 资源管理器浏览它们,并且还允许他们搜索和导出文件和文件夹。
另见
NirSoft 网站:www.nirsoft.net/
ShadowCopyView 下载页面:www.nirsoft.net/utils/shadow_copy_view.html
使用 VSSADMIN 和 MKLINK 从磁盘镜像挂载 VSC
VSSADMIN 是一个内置的 Windows 命令行工具,能够显示卷影像副本。你不仅可以在运行中的 Windows 系统上使用它,还可以在磁盘镜像上使用它。在本教程中,我们将展示如何做到这一点。
准备工作
由于我们要使用的工具是内置的,因此无需安装:如果你使用的是 Windows,你已经拥有它。因此,你只需要挂载一个取证镜像,你已经知道如何做到这一点,见 第三章,Windows 驱动器获取。一旦镜像挂载完成,你就可以开始了。
如何操作…
使用 VSSADMIN 和 MKLINK 从磁盘镜像挂载 VSC 的步骤如下:
- 启动 Windows 命令提示符(别忘了以管理员身份运行)。在我们的例子中,启动分区挂载为
G:\
驱动器,因此我们使用以下命令:
vssadmin list shadows /for=G:\
图 5.5. vssadmin list shadows /for=G:\ 命令输出
正如你在前面的图中所看到的,我们的取证镜像包含一个影像副本。
- 对我们来说,它的最重要属性是 影像副本卷,在我们的例子中它是
\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy7
。现在我们准备好使用 MKLINK 挂载我们找到的影像副本。使用以下命令:
mklink /D C:\VSC \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy7
图 5.6. mklink /D C:\VSC \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy7 命令输出
MKLINK 创建一个文件夹(你需要选择它的名称和位置,并将其作为命令的一部分输入),并将影像副本挂载到该文件夹上,这样你就可以像浏览普通文件夹一样浏览它。不要忘记 /D 开关 —— 我们需要它来创建一个目录符号链接,而不是文件。
- 还有另一种方法可以使用 Windows 资源管理器浏览 VSC。我们需要获取 VSC 路径,格式如下:
\\localhost\G$\@GMT-2016.12.28-20.00.30
路径的第一部分 \\localhost\
将始终相同。接下来的部分取决于启动分区的驱动器字母。正如你所记得的,在我们的例子中是 G:\
,所以路径中是 G$
。例如,如果你的驱动器字母是 H:\
,那就是 H$
,依此类推。最后一部分是基于 VSC 的创建时间。你可以从 VSSADMIN 输出中获取它,但必须将其转换为 GMT 时间。现在,只需将其作为路径输入 Windows 资源管理器,影像副本就可以进行检查了,如下图所示:
图 5.7. 在 Windows 资源管理器中打开的卷影像副本
它是如何工作的…
VSSADMIN 显示已挂载取证镜像中的可用卷影副本。MKLINK 创建一个符号链接指向影像副本,以便数字取证检查员可以在 Windows 资源管理器中浏览它。
另见
Misrosoft TechNet 上的 VSSADMIN 页面:technet.microsoft.com/en-us/library/cc754968(v=ws.11).aspx
Microsoft TechNet 上的 MKLINK 页面:technet.microsoft.com/en-us/library/cc753194(v=ws.11).aspx
使用 Magnet AXIOM 处理和分析 VSC 数据
Magnet AXIOM 是 Magnet Forensics 提供的一个集成数字取证工具,能够从计算机和移动设备中提取(获取)和处理数据。它支持大量 Windows 取证工件,包括从 Windows 卷影副本中提取数据。
准备开始
在撰写本文时,Magnet Forensics 提供了功能完整的 Magnet AXIOM 30 天免费试用版。您只需访问 Magnet Forensics 网站并点击“立即试用”按钮。填写表格,包括您的名字、姓氏、电子邮件地址、电话号码、州或省、国家等,然后点击“申请免费试用”。确保输入您的真实电子邮件地址:试用密钥和下载链接将发送到该地址。收到后,下载安装程序并按照提示操作,您就可以开始了!
如何操作…
使用 Magnet AXIOM 处理和分析数据的步骤如下:
-
启动 Magnet AXIOM 处理。
-
您将看到的第一个窗口是案件详情,如下图所示:
图 5.8。Magnet AXIOM 案件详情窗口
这里我们有四个主要部分:
-
案件文件位置 - 在这里,您应该选择处理过程中创建的文件夹名称和文件路径。
-
获取证据的位置 - 如果您计划通过 AXIOM 获取硬盘或移动设备,请选择文件夹名称和文件路径,或者直接选择与案件文件相同的路径。
-
案件信息 - 输入您的案件编号、姓名和案件描述。
-
报告选项 - 如果您有自己的标志或公司标志,可以通过点击浏览来选择它。确保图像是正方形的,因为它将被调整为 150x150 像素。
- 填写完所有字段后,您可以点击“转到证据来源”。您可以看到如下图所示的证据来源窗口:
图 5.9。Magnet AXIOM 证据来源窗口
这里我们有两个选项:获取证据和加载证据。
-
我们将使用之前获取的镜像,因此选择的是加载证据按钮。您也可以使用之前教程中获取的任意镜像。
-
下一个窗口是加载证据,如下图所示:
图 5.10。Magnet AXIOM 加载证据窗口
-
在这里,我们有一个“卷影像副本”选项——点击它。现在,我们有两个选项:驱动器和镜像。
-
如我们之前所述,我们将使用一个镜像。选择后,您可以看到镜像上可用的影像副本列表,如下图所示:
图 5.11. 卷影像副本列表
- 您可以选择一个或多个影像副本,并通过点击“下一步”进入处理详情。这次,我们将跳过这一步,直接进入伪造物详情(点击“转到伪造物详情”按钮)。
由于我们正在处理一个影像副本,MOBILE ARTIFACTS 选项不可用,但我们可以使用 COMPUTER ARTIFACTS 选项。与 Belkasoft Evidence Center 一样,在这里我们有广泛的伪造物,您可以在下图中看到:
图 5.12. Magnet AXIOM 选择要包含在案件中的伪造物窗口
-
为了测试,我们已将所有可用伪造物包含在案件中。点击“转到分析证据”按钮,接着点击“分析证据”按钮。这将启动 Magnet AXIOM Examine。
-
一旦处理完成,您将看到 Magnet AXIOM Examine 中的结果。
它是如何工作的…
Magnet AXIOM 会扫描驱动器或镜像中的可用卷影像副本,并将它们作为证据来源。处理完所选影像副本中的所有可用数据后,它会根据审查员做出的选择提取法医伪造物。
另见
Magnet Forensics 网站:www.magnetforensics.com/
Magnet AXIOM 免费 30 天试用请求页面:www.magnetforensics.com/try-magnet-axiom-free-30-days/
Belkasoft Evidence Center:belkasoft.com/ec
第六章:Windows 注册表分析
本章将覆盖以下内容:
-
使用 Magnet AXIOM 提取和查看 Windows 注册表文件
-
使用 RegRipper 解析注册表文件
-
使用 Registry Explorer 恢复已删除的注册表数据
-
使用 FTK 注册表查看器进行注册表分析
介绍
Windows 注册表是最丰富的数字证据来源之一。在对注册表的分析中,你可以找到大量极其有用的信息。计算机配置、最近访问的网页和打开的文档、连接的 USB 设备,以及许多其他数据,都可以通过 Windows 注册表取证分析获得。
注册表采用树状结构。每棵树包含多个键,每个键可能包含一个或多个子键和值。
由于取证人员通常处理驱动器映像,因此知道这些注册表文件存储的位置非常重要。前六个文件位于 C:\Windows\System32\config
。这些文件包括:
-
组件
-
默认
-
SAM
-
安全
-
软件
-
系统
每个用户账户也有两个文件:
-
NTUSER.DAT
,位于C:\Users\%Username%\
-
UsrClass.dat
,位于C:\Users\%Username%\AppData\Local\Microsoft\Windows
本章将向你展示如何使用商业和开源取证工具检查这些文件,并如何恢复已删除的键、子键和值。
使用 Magnet AXIOM 提取和查看 Windows 注册表文件
如果你已经了解了如何在取证工作中使用 Magnet AXIOM,特别是当你需要从快照中提取和分析数据时,你会发现这个工具有很多非常实用的功能。因此,在接下来的步骤中,我们将继续使用它。这次,你将学习如何使用 Magnet AXIOM,特别是其 Registry Explorer 组件,进行 Windows 注册表取证分析。
准备工作
如果你正在一本一本地跟随本书中的步骤,那么你已经安装了 Magnet AXIOM——至少是试用版。如果没有,请参考 第五章,Windows 快照分析,查看安装说明。安装完成后,你就可以开始使用了。
如何操作…
使用 Magnet AXIOM 进行 Windows 注册表分析的步骤如下:
- 让我们创建一个新案件。创建后,填写所有字段,进入证据源部分。点击加载证据按钮,你会看到一个类似以下图示的证据源选择窗口:
图 6.1. Magnet AXIOM 选择证据源窗口
- 这次,我们选择 COMPUTER IMAGE 选项。同样,你可以使用之前获取的其中一个映像;RAW 和 E01 格式均支持。从下图可以看出,我们的映像包含两个分区和一个未分区空间。
图 6.2. Magnet AXIOM 添加文件和文件夹窗口
- 你可以只勾选主分区(分区 2),或选择所有可用分区,如我们所做的。点击下一步,你将进入选择搜索类型屏幕,如下图所示:
图 6.3. Magnet AXIOM SELECT SEARCH TYPE 窗口
-
在 Magnet AXIOM 过程中有四种搜索类型:
-
完整 - 用于从所有位置提取数据,包括未分配空间、影像副本等。
-
快速 - 用于从常见区域提取数据。
-
扇区级别 - 这个选项对于未知或损坏的文件系统,或格式化的驱动器非常有用。
-
自定义 - 此选项允许检查员选择位置。例如,如果你只希望 AXIOM 提取未分配空间,你可以仅选择该位置。
-
为了测试,你可以选择所有位置,但这会花费很多时间进行处理。同时,你也可以从“快速”类型开始,获取一些简单的证据。如果你不想更改证据类型,可以直接进入分析证据部分。点击分析证据按钮,Magnet AXIOM Examine 会出现。
- 一旦数据源处理完成,前往左侧的下拉菜单,如下图所示,选择注册表选项:
图 6.4. Magnet AXIOM Examine 导航窗格
- 一旦选择此选项,你可以在导航窗格中看到所有包含注册表集的可用文件,如下图所示:
图 6.5. AXIOM 注册表查看器的导航窗格
- 如果你点击注册表文件的加号,你可以浏览其内容,并且还可以在 AXIOM 注册表查看器的证据窗格中查看其值。
图 6.6. AXIOM 注册表查看器的证据窗格
- 在上图中,你可以看到 TimeZoneInformation 键的内容。这个键非常重要,因为它帮助检查人员检测正确的时区。你查看的键和其来源的更多信息可以在“详细信息”窗格中找到,如下图所示:
图 6.7. AXIOM 注册表查看器的详细信息窗格
- 查看证据来源。如果你点击蓝色链接,它会带你到注册表文件的所在位置,并在文件系统查看器中打开该文件。现在,你可以导出注册表文件。为此,右键点击该文件并选择 保存文件 / 文件夹到…,如下图所示:
图 6.8. 导出注册表文件
- 你还可以查看 AXIOM 在处理阶段自动提取的证据。在此过程中,右键点击注册表文件,并从上下文菜单中选择“查看相关证据”。
一旦你导出了文件,你就可以用其他工具进行解析。当然,Magnet AXIOM 是一个非常强大的取证工具,它能从注册表文件中提取大量数据,但有时使用其他工具进行解析也很有用,比如 RegRipper。我们将在下一个教程中展示如何操作。
它是如何工作的…
Magnet AXIOM 收集所有可用的注册表文件,以便数字取证检查员可以手动分析它们,或者将它们导出以便用其他工具进行解析。此外,AXIOM 会自动从这些文件中提取大量取证证据,检查员可以在 Magnet AXIOM Examine 的证据面板中分析这些结果。
另见
Magnet AXIOM 概述:
www.magnetforensics.com/magnet-axiom/
使用 RegRipper 解析注册表文件
RegRipper 是一个开源的 Windows 取证工具,由著名的取证专家 Harlan Carvey 开发,他是《Windows Forensic Analysis》系列的作者。它是用 Perl 编写的,并且有很多有用的插件可供使用。此外,能够使用 Perl 编写的数字取证检查员也可以为自己的特定需求创建插件。
准备就绪
访问 RegRipper 在 Harlan 的 GitHub 页面,点击绿色按钮(Clone 或 Download),选择 Download ZIP 选项。下载完成后(在我们的案例中,文件名是 RegRipper2.8-master.zip),解压缩文件,你就可以开始使用了。
如何操作…
解析注册表文件的步骤使用 RegRipper:
- 你已经知道如何从磁盘映像导出注册表文件,至少是使用 Magnet AXIOM。所以,我们确定你已经有了一个文件可以用 RegRipper 进行解析。启动
rr.exe
,你会看到一个像下面这样的窗口:
图 6.9. RegRipper 主窗口
这里,你有三个字段需要填写:
-
-
Hive 文件 - 使用浏览按钮选择你之前导出的 Hive(注册表)文件。在我们的案例中,它是 SYSTEM。
-
报告文件 - 使用浏览按钮选择一个文件来保存输出结果(它是纯文本格式,所以 TXT 文件就可以了)。在我们的案例中,文件名是 SYSTEM_output。
-
配置文件 - 从下拉菜单中选择正确的解析配置文件。我们使用 SYSTEM 文件作为源文件,因此我们选择的配置文件是 ‘system’。
-
- 一旦选择了文件和正确的配置文件,你可以按下 Rip It 按钮。处理完成后,你就可以分析输出结果了:
图 6.10. RegRipper 输出结果
如果你向下滚动输出文件,你会发现其中包含了很多从取证角度看非常重要的信息,比如连接的 USB 设备、事件日志配置、挂载的设备、网络连接等等。工具运行非常快,因此这是一个非常好的起点工具集。
它是如何工作的…
RegRipper 使用 Perl 模块,根据取证检查员选择的配置文件,从 hive(注册表)文件中提取数据,并将输出保存为 TXT
文件。
另见
RegRipper 下载页面:
github.com/keydet89/RegRipper2.8
使用注册表资源管理器恢复已删除注册表项目
注册表资源管理器是另一款由著名数字取证专家 Eric Zimmerman 提供的免费的 Windows 注册表取证工具。此工具的一个非常有用的功能是其恢复已删除记录的能力。而且它比你想象的要简单。
准备工作
访问 Eric 的 GitHub,并点击“注册表资源管理器”下载链接。在我们的案例中,它叫做Registry Explorer/RECmd Version 0.8.1.0。截至目前,工具的最新版本是 0.8.1.0。下载完成后,解压RegistryExplorer_RECmd.zip,就可以开始使用了。
如何操作…
使用注册表资源管理器恢复已删除注册表项目的步骤如下:
- 启动 RegistryExplorer.exe,进入“选项”,确保启用了“恢复已删除的键/值”选项,如下图所示:
图 6.11. 注册表资源管理器“恢复已删除的键/值”选项
现在你可以选择一个 hive 文件进行处理。为此,点击文件 - 加载离线 hive,或直接按Alt + 1。就这么简单。
- 现在,你可以浏览你的 hive 文件内容,在我们的案例中是 SYSTEM,包括相关和不相关的已删除记录,如下图所示:
图 6.12. 相关和不相关的已删除记录
相关记录和不相关记录的区别在于,前者仍与活动注册表中的键关联,而后者则没有。
工作原理…
注册表资源管理器处理所选的 hive 文件,并自动恢复已删除的记录,包括相关和不相关的记录。处理完成后,检查员可以浏览可用数据。
另见
Eric Zimmerman’s GitHub:
介绍注册表资源管理器:
binaryforay.blogspot.ru/2015/02/introducing-registry-explorer.html
使用 FTK 注册表查看器进行注册表分析
FTK 注册表查看器是作为 AccessData 产品的一部分提供的,也可以单独下载。它允许用户查看 Windows 机器上注册表的内容。
准备工作
如果你已经安装了 FTK,注册表查看器应该已经在你的系统上。如果没有,你可以在 AccessData 的官网上下载 FTK Imager——它是免费的。你需要填写一些个人信息,包括姓名、公司名称、职位和电子邮件地址,才能获取免费的下载链接。下图展示了 FTK Imager 的下载页面:
图 6.13. 下载 FTK Imager
如果你只需要下载 Registry Viewer,你也可以在产品下载页面进行下载。
如何操作…
安装完成 Registry Viewer 后,导航到你计算机上的程序图标,双击打开程序。同时打开 FTK Imager。
- 在 Imager 中,转到 文件 > 获取受保护的文件。
图 6.14. 获取受保护的文件
- 在弹出的小框中,选择一个目标文件夹来存放你的文件。
图 6.15. 选择目标文件夹
注意 Imager 从你自己的系统获取文件的警告。像这样在示例或练习案例中没问题,但如果你在尝试查找法医图像中的证据时看到这个警告,那就说明你选择了错误的来源!
- 确保你选择了密码恢复和目标文件夹栏下方的所有注册表文件,否则你只能获得简化版的结果。点击确定。
生成可能需要一点时间,前几秒可能看起来没有反应。记住,处理技术问题时,耐心是美德!你可以通过打开之前指定的文件路径中的文件夹来检查过程是否完成,文件夹现在应该已经被填充,如下图所示:
图 6.16. 已填充的文件夹
- 点击文件,然后选择更改文件夹和搜索选项。这将打开一个对话框。点击查看选项卡,并在“隐藏的文件和文件夹”下启用“显示隐藏的文件、文件夹和驱动器”选项。
图 6.17. 显示隐藏文件
点击应用,然后点击确定。
现在我们可以查看通过 Registry Viewer 收集的注册表数据。
-
为了做到这一点,打开 Registry Viewer,点击文件 > 打开,然后进入你保存注册表文件的文件夹,找到标记为
NTUSER.DAT
的文件并打开它。 -
SOFTWARE 菜单会列出所有在该计算机上安装的软件:
图 6.18. 已安装的软件
- 你可以在
NTUSER.DAT\SOFTWARE\Microsoft\UserData\UninstallTimes
中查看已卸载的软件及其卸载时间。
图 6.19. 卸载时间
如果你怀疑用户采取了反取证措施以破坏调查,这一点特别有用。
- 在
NTUSER.DAT\SOFTWARE\Microsoft\InternetExplorer\TypedURLs
中,你可以查看用户在 Internet Explorer 中访问的任何网站地址:
图 6.20. 在 Internet Explorer 中访问的网站
在NTUSER.DAT\Software\Microsoft\Internet Explorer\IntelliForms
下,你可以看到自动填充表单的数据,例如用户名和密码。
它是如何工作的…
注册表查看器从计算机或取证镜像中收集注册表文件,允许使用 FTK 或 Imager 进行手动检查。
另请参见
AccessData 的产品页面:
accessdata.com/product-download
AccessData 注册表查看器用户指南:
ad-pdf.s3.amazonaws.com/RegistryViewer_UG.pdf
第七章:主要的 Windows 操作系统工件
本章将涵盖以下内容:
-
使用 EnCase Forensic 进行回收站内容分析
-
使用 Rifiuti2 进行回收站内容分析
-
使用 Magnet AXIOM 进行回收站内容分析
-
使用 FullEventLogView 进行事件日志分析
-
使用 Magnet AXIOM 进行事件日志分析
-
使用 EVTXtract 进行事件日志恢复
-
使用 EnCase Forensic 进行 LNK 文件分析
-
使用 LECmd 进行 LNK 文件分析
-
使用 Link Parser 进行 LNK 文件分析
-
使用 Magnet AXIOM 进行预取文件分析
-
使用 PECmd 解析预取文件
-
使用 Windows Prefetch Carver 恢复预取文件
引言
Windows 操作系统的一些功能会生成大量有价值的工件,这些工件可以作为数字证据的线索。最常见的这些工件来源包括回收站、Windows 事件日志、LNK 文件和预取文件。
回收站包含用户通过右键菜单删除的文件和文件夹。实际上,这些文件并没有从文件系统中删除,而只是从原位置移动到了回收站。有两种回收站格式:Recycler 格式(Windows 2000,XP)- 文件存储在 C:\Recycler\%SID%\
下,元数据存储在 INFO2
文件中;和 $Recycle.Bin
格式 - 文件存储在 C:\$Recycle.Bin\%SID%\
下的 $R
文件中,元数据存储在 $I 文件中。
如你所料,Windows 事件日志收集有关不同系统事件的信息。Windows 2000、XP 和 2003(除服务器版本外)将这些日志存储在三个文件中:应用程序、系统和安全。这些文件可以在 C:\Windows\system32\config
下找到。自 Windows Vista 起,事件日志格式已更改为 XML。这些 EVTX 文件可以在 C:\Windows\System32\Winevt\Logs
下找到。
LNK 文件或 Windows 快捷方式文件指向其他文件:应用程序、文档等。这些文件可以在整个系统中找到,帮助数字取证人员揭示一些嫌疑人的活动,包括最近使用的文件、应用程序等。
最后是预取文件。您可以在 C:\Windows\Prefetch
中找到这些文件,它们包含关于已使用应用程序的大量有价值的信息,包括运行次数、最后运行日期和时间等。
在本章中,您将学习如何使用商业和免费的数字取证工具分析这些数字证据来源。
使用 EnCase Forensic 进行回收站内容分析
EnCase 是 Guidance Software 开发的著名且被法院接受的商业数字取证工具。它被全球各地的审查员使用,包括执法机构和私营部门。它支持整个调查生命周期,从数据收集到报告生成。而且,它内置了脚本语言——EnScript,用户可以编写自己的脚本来解决数字取证问题。许多有用的 EnScript 脚本可以在 EnCase App Central 免费获取。在本指南中,我们将向你展示如何使用这一强大的工具检查 Windows 回收站的内容。
准备工作
不幸的是,Guidance Software 并未提供 EnCase Forensic 的试用版本,因此要遵循本指南,你必须拥有有效的许可证。如果你有许可证,请确保使用的是最新版本的工具:EnCase Forensic 8。
如何操作……
在 Encase Forensic 中进行回收站内容分析的步骤如下:
- 我们从创建一个新案件开始。为此,请点击左侧的“新案件”链接。案件选项窗口将会弹出,如下图所示:
图 7.1. 案件选项
-
我们选择了#2 法医模板,并且有很多信息需要填写。我们从案件信息开始。在这里,我们需要填写 6 个字段:案件编号、案件日期、审查员姓名、审查员 ID、机构和描述。所有字段都是自解释的,所以只需填写即可。
-
让我们进入名称和位置。首先在第一个字段中输入案件的名称或编号,然后选择基础案件文件夹(案件文件将存储在这里)。完整案件路径字段将自动填充。
-
转到证据缓存位置。你可以使用相同的文件夹来存储缓存(为此,勾选“使用基础案件文件夹作为主要证据缓存”),或选择一个或两个文件夹来存储它。
-
最后,如果你希望你的案件得到备份,请勾选“每次备份”选项,并选择其值。别忘了选择备份文件夹和备份的最大大小。一旦所有内容填写完毕,点击确定即可。
-
现在你可以看到一个包含案件信息的窗口,并且可以添加法医图像。为此,点击左侧的“添加证据文件”链接。
图 7.2. 添加证据
如上图所示,有 6 个证据来源选项:你可以添加本地设备(别忘了使用写入阻断器)、远程证据源、E01 或 RAW 图像等。你已经有了 E01 和 RAW 图像,因此可以选择其中一个。我们将使用 E01 图像。如果你也打算使用 E01 图像,请点击“添加证据文件”链接;如果你使用的是 RAW 图像,请点击“添加 RAW 图像”。
- 现在你可以看到你的证据文件。点击文件名以查看其内容。EnCase 解析数据可能需要一些时间。数据解析完成后,转到$Recycle bin 文件夹:
图 7.3. $Recycle.Bin 文件夹内容
如前图所示,显示了用户的安全标识符(SID)列表。这可以帮助检查人员确定是哪个用户将文件放入回收站。也有文件夹;我们打开其中一个。在我们的例子中,我们打开文件夹 S-1-5-21-811620217-3902942730-3453695107-1000
。请看下一个图:
图 7.4. S-1-5-21-811620217-3902942730-3453695107-1000 文件夹内容
EnCase 已经自动为你解析了回收站内容。它还收集了许多有价值的信息:原始文件名、原始路径、删除日期和时间等等。
工作原理…
根据 Windows 版本,EnCase 从 INFO2
文件(Windows XP)或 $I
和 $R
文件(Windows Vista 及以上)中提取回收站内容的信息,因此法医检查人员可以预览它们,查看原始文件名、路径、删除日期等。
另见
EnCase Forensic 8 新功能:
www.guidancesoftware.com/document/product-brief/what's-new-in-encase-forensic-8
使用 Rifiuti2 分析回收站内容
Rifiuti2 是一个开源工具,使计算机取证检查员能够分析 Windows 回收站的内容。该工具将显示重要信息,如回收文件的删除日期和时间、原始路径等。Rifiuti2 支持旧版(从 Windows 95 开始)和现代(直到 Windows 10)回收站格式。更重要的是,语言不是问题:该工具支持所有本地化版本的 Windows。
准备工作
前往 Rifiuti2 的下载页面,下载最新 Windows 版本的 ZIP 压缩包。在我们的例子中,最新版本是 0.6.1,因此我们下载的压缩包名为 Rifiuti2-0.6.1-win.zip。解压后即可使用。
操作步骤…
你已经知道,每个用户在回收站中都有自己的文件夹。记得上一节关于 EnCase 的截图吗——那里有多个文件夹。要使用 Rifiuti2,首先需要导出其中一个文件夹。许多工具都能做到这一点,你已经知道其中的一些,例如 Autopsy、FTK Imager 和 Magnet AXIOM。
一旦你导出了文件夹,就可以启动 Windows 命令提示符并使用该工具。如果你使用的是 32 位系统,请进入 x32 文件夹;如果你使用的是 64 位系统,请进入 x64 文件夹。在这两个文件夹中,你将找到两个 Windows 可执行文件:rifiuti.exe
和 rifiuti-vista.exe
。如果你从 Windows 系统(包括 XP)导出了文件夹,请使用 rifiuti.exe
,否则(从 Vista 开始)使用 rifiuti-vista.exe
。在我们的例子中,文件夹是从 Windows 10 镜像中导出的,因此我们使用了 rifiuti-vista.exe
。
rifiuti-vista.exe S-1-5-21-3736901549-408126705-1870357071-1001 >
rec_bin.txt
如你所见,我们将输出重定向到了一个 TXT
文件。请查看其内容,如下图所示:
图 7.5. Rifiuti2 输出
一切都被正确解析。我们获得了原始路径、名称、大小和删除时间戳。你注意到那些西里尔字母符号了吗?正如我们之前提到的,所有本地化版本的 Windows 都是支持的!
它是如何工作的…
如果你有来自 Vista 之前 Windows 系统的文件夹,可以使用 rifiuti.exe
,它解析 INFO2
文件内容,提取有关特定用户回收站内容的信息。
如果你有来自 Windows Vista 或更高版本的文件夹,使用 rifiuti-vista.exe
,它会解析所谓的索引文件($I),提取有关回收站中文件的信息,包括它们的原始路径、名称、大小、删除日期和时间。
另见
Rifiuti2 GitHub 页面:
github.com/abelcheung/rifiuti2
Rifiuti2,版本 0.6.1,下载页面:
github.com/abelcheung/rifiuti2/releases/tag/0.6.1
使用 Magnet AXIOM 分析回收站内容
Magnet AXIOM 支持所有常见的 Windows 操作系统伪造物,包括当然也有回收站。在本教程中,我们将向你展示如何使用它来分析我们怀疑的对象试图删除的文件,这些文件被放入了回收站。
准备工作
如果你还没有下载并安装 Magnet AXIOM 的试用版,可以通过 查看更多 部分中的链接进行下载。一旦工具安装在你的工作站上,打开它,创建一个新案件,添加一张取证镜像,并使用默认选项处理它。如果你不知道如何操作,可以参考前面章节中的相关教程。
如何操作…
使用 Magnet AXIOM 分析回收站内容的步骤如下:
- 一旦你的取证镜像被处理,转到 AXIOM Examine 的伪造物类型面板,向下滚动至操作系统部分,如下图所示:
图 7.6. 操作系统伪造物列表
- 如你所见,列出了很多不同的操作系统伪造物,包括回收站。在我们的例子中,回收站里只有一个文件。你可以在下图中看到它:
图 7.7. 回收站内容
- 所以,我们的嫌疑人在回收站中有一个 TeamViewer 应用的快捷方式。这个应用用于远程访问。是不是很可疑?你还可以找到文件被删除的日期和时间、删除它的用户的安全标识符,以及原始文件路径—所有你可能需要的信息。
它是如何工作的…
如果你直接使用默认选项处理证据源,或者在自定义伪造物列表中选择回收站,Magnet AXIOM 会解析 INFO2
文件(适用于 Windows XP 及更早版本)或 $I 和 $R 文件(适用于 Windows Vista 及更高版本)中的所有可用信息。
另见
Magnet AXIOM 试用请求页面:
www.magnetforensics.com/try-magnet-axiom-free-30-days/
使用 FullEventLogView 进行事件日志分析
FullEventLogView 是 NirSoft 提供的另一个有用的免费工具,能够解析 Windows 10、8、7 和 Vista 的事件日志。计算机取证审查员可以使用该工具查看来自本地计算机的事件日志以及位于 %SystemRoot%\Windows\System32\winevt\Logs
路径下的 EVTX 文件。
准备工作
访问 NirSoft 网站上的 FullEventLogView 下载页面(该链接在“另见”部分中),并根据你的系统下载 32 位或 64 位版本的工具。解压下载的归档文件后,你就可以开始使用了。
如何操作…
使用 FullEventLogView 进行事件日志分析的步骤如下:
- 启动工具后,你应该做的第一件事是选择数据源。为此,请前往“文件 - 选择数据源”,或者直接按 F7。如以下图所示,有三种可用的选项:
-
-
从运行工具的计算机加载日志
-
从远程计算机加载日志
-
从你之前导出的文件夹加载日志(例如从取证镜像中)
-
图 7.8. 在 FullEventLogView 中选择数据源
- 默认情况下,FullEventLogView 仅显示过去 7 天的事件。如果你需要更长时间段的事件,可以前往“选项 - 高级选项”(或者按 F9),并选择“显示所有时间的事件”。你还可以选择一个时间段来显示,包括本地时间和 GMT,并按级别、事件 ID、提供程序和频道筛选事件日志。
图 7.9. FullEventLogView 高级选项
- 一旦你应用了所需的所有筛选器并选择了数据源,你将在 FullEventLogView 的主窗口中看到所有可用的事件日志。如下图所示:
图 7.10. 查看从镜像导出的文件夹中的事件日志
审查员可以按任何可用的列对日志进行排序。此外,你还可以在日志中进行搜索:前往“编辑 - 查找”,或者直接按 Ctrl+F。
它是如何工作的…
根据数据源,FullEventLogView 会显示来自本地计算机、远程计算机或文件夹的事件日志,并允许数字取证审查员对其进行排序和使用关键词搜索。
另见
事件日志:
technet.microsoft.com/en-us/library/cc722404(v=ws.11).aspx
FullEventLogView 下载页面:
www.nirsoft.net/utils/full_event_log_view.html
使用 Magnet AXIOM 进行事件日志分析
让我们继续使用 Magnet AXIOM 来探索一些常见的 Windows 操作系统取证遗留物。在本章中,我们将向你展示如何使用此工具检查 Windows 事件日志。
准备工作
你已经使用过这个工具来收集法医镜像中的回收站数据。这一次,我们关注的是事件日志分析,但如果你在使用默认选项处理整个镜像时,仍然可以使用相同的案例来处理回收站数据。
如何操作…
使用 Magnet AXIOM 进行事件日志分析的步骤如下:
- 打开你用于回收站法医分析的案例,重新进入操作系统工件列表,但现在选择 Windows 事件日志,如下图所示:
图 7.11. 操作系统工件列表
- 如前图所示,我们有大量的事件日志。为了简化分析,你可以对它们进行排序。例如,我们使用了“创建日期/时间”列来排序事件日志。你可以在下图中看到部分结果:
图 7.12. 已排序的事件日志记录
当然,你可以使用其他列来排序日志,例如事件 ID 或事件描述摘要——这取决于你的具体案件需求。
它是如何工作的…
在处理阶段,Magnet AXIOM 会自动查找法医镜像中的可用 Windows 事件日志。结果,检查员可以得到所有日志的列表,并能够根据不同的标准对其进行排序。
另请参见
Magnet AXIOM for computers: www.magnetforensics.com/magnet-axiom/computers/
使用 EVTXtract 恢复事件日志
你已经知道如何导出、排序和搜索 Windows 事件日志。现在是学习如何恢复已删除或损坏的事件日志工件的时候了。幸运的是,有一个由 Willi Ballenthin 开发的开源工具能够解决这个问题:EVTXtract。该工具不仅能从 RAW 镜像中恢复 EVTX 文件片段,还能从未分配空间和内存转储中恢复。
准备工作
首先,由于 EVTXtract 是用 Python 编写的,请确保你的工作站已安装该软件。如果没有,访问官方 Python 网站,下载并安装它。此外,你还需要 python-evtx,你可以在 Willi 的 GitHub 上找到它。Python-evtx 是一个 EVTX 解析器,是 EVTXtract 的依赖项。要安装它,从 GitHub 下载并解压归档文件,打开 Windows 命令提示符,选择你解压文件的目录,然后运行以下命令:
setup.py install
就这样;现在你已经安装了 python-evtx,并准备好安装 EVTXtract。这个过程几乎相同:从 GitHub 下载并解压归档文件(但现在使用 EVTXtract 下载页面),打开 Windows 命令提示符,选择你解压文件的目录,然后运行以下命令:
setup.py install
我们完成了。现在,你的 Python 2 脚本文件夹中有了 evtxtract.exe
—— 在我们的例子中是 *C:\Python27\Scripts*
—— 并且你已经准备好使用它了。
如何操作…
首先,你必须决定使用什么作为数据源。你有三个选项:RAW 格式的磁盘镜像、内存转储或未分配空间。你已经在之前的教程中创建了 RAW 磁盘镜像和内存镜像(转储),那么未分配空间呢?你已经使用过 Autopsy,甚至从 NTFS 分区恢复了一些数据。但你也可以使用这个工具将未分配空间提取到单独的文件中。为此,进入数据源,右键点击你想从中提取未分配空间的分区,选择 提取未分配空间到单个文件。
图 7.13. 使用 Autopsy 提取未分配空间到单个文件
一旦提取了未分配空间,你可以使用这个文件作为 EVTXtract 的源文件。要开始恢复过程,请使用以下命令:
evtxtract.exe image.raw > output.xml
别忘了将 image.raw
更改为你选择的文件。过程完成后,你可以分析并搜索输出文件。
工作原理…
EVTXtract 遍历磁盘镜像(仅支持 RAW 格式)、内存转储或提取的未分配空间文件(取决于检查者的选择),并恢复 EVTX 数据片段,保存到 XML 文件中。
另请参见
Python 下载页面:
Python-evtx 下载页面:
github.com/williballenthin/python-evtx
EVTXtract 下载页面:
github.com/williballenthin/EVTXtract
使用 EnCase 法医分析 LNK 文件
在之前的教程中,你已经学会了如何创建新案件、添加证据文件,并使用 EnCase Forensic 检查 Windows 回收站的内容。现在,是时候深入了解 EnCase 证据处理器,特别是 Windows Artifact Parser 了。这个模块可以帮助数字取证检查员自动解析不同的 Windows 法医遗留物,包括 LNK 文件。
准备工作
要使用 EnCase 证据处理器,你需要创建一个案件并添加证据项。你已经创建了一个用于检查回收站的案件,因此可以在此处使用该案件。如果没有可用案件,请创建一个新案件并添加镜像。完成后,你就可以开始使用 EnCase 证据处理器和 Windows Artifact Parser。
操作步骤…
LNK 文件分析步骤如下:
- 一旦你创建了新案件并添加了证据项,转到 处理证据 - 处理… 你将看到 EnCase 处理器选项窗口,如下图所示:
图 7.14. EnCase 处理器选项
- 如你所见,这里有很多选项:你可以恢复文件夹、查找电子邮件、查找互联网遗留物等。但现在,让我们进入模块文件夹。你可以在下图中看到它的内容:
图 7.15. 模块文件夹内容
- 如前所述,这次我们关注的是 Windows Artifact Parser。如果你点击它的名称,会看到以下选项:
图 7.16. Windows Artifact Parser 选项
-
该模块能够提供有关快捷方式文件、回收站文件(如果你希望它们出现在报告中,请确保使用此选项)、MFT 事务和 ShellBags 的信息,包括从图像的未分配空间中提取的那些信息(如果你勾选了“搜索未分配空间”选项)。
-
这次我们要解析 LNK 文件,因此选择 Link Files 选项(别忘了勾选“搜索未分配空间”,我们可不想错过任何东西!)。
-
一旦处理完成,进入 EnScript - Case Analyzer。在这里,你可以找到所有可用的 LNK 文件,以及由 Windows Artifact Parser 提取的大量元数据。查看下图了解更多详情:
图 7.17. 解析后的 LNK 文件
它是如何工作的…
Windows Artifact Parser 会遍历添加到案件中的镜像,并从其中找到的 LNK 文件中提取信息,包括如果考官选择了该选项的话,从未分配空间中提取的文件。一旦处理完成,考官就可以分析、书签并将这些信息添加到报告中。
另见
Windows 快捷方式文件格式规范:
使用 LECmd 分析 LNK 文件
LECmd 是 Eric Zimmerman 开发的另一款优秀的免费开源 Windows 取证工具。它处理文件非常快速,既可以用于解析单个 LNK 文件,也可以解析包含它们的文件夹。同时,它提供了多种导出选项,包括 CSV 和 XML。
准备工作
进入 LECmd 下载页面,下载包含该工具的压缩包。解压下载的文件,打开 Windows 命令提示符,切换到刚解压的目录,然后你就可以开始了。
如何操作…
使用 LECmd 分析 LNK 文件的步骤:
- 如前所述,LECmd 可以处理单个文件和文件夹。如果你想从单个文件中提取信息,使用 -f 参数;如果目标是目录,则使用 -d 参数。如果你只对指向可移动驱动器的 LNK 文件感兴趣,可以使用 -r 参数。其他可用选项请参见下图:
图 7.18. LECmd 选项
- 如果你想在取证镜像上的文件或文件夹上运行 LECmd,首先需要挂载它。幸运的是,你已经知道如何操作了。在我们的案例中,主分区挂载在
N:\
。我们将对Roaming
文件夹运行 LECmd,并将输出保存为 xhtml 格式。操作命令如下:
LECmd.exe -d "N:\Users\NP\AppData\Roaming" -xhtml
"C:\Users\Admin\Desktop\test.html
- 你可以在下图中看到部分 xhtml 格式的输出:
图 7.19. LECmd 部分 xhtml 格式的输出
- 如前图所示,LECmd 从 LNK 文件中提取了大量信息。例如,我们可以看到 LNK 文件和目标文件(在我们的例子中是 LacyMilletCL.doc)的 MAC(修改、访问、创建)时间,还能看到目标文件的大小、绝对路径,甚至计算机 ID 和 MAC 地址。
它是如何工作的…
LECmd 遍历文件夹或单个文件,从可用的 LNK 文件中提取信息,并将输出保存为检查员选择的格式。
另见
LECmd 下载页面:
介绍 LECmd:
binaryforay.blogspot.ru/2016/02/introducing-lecmd.html
Shell Link (.LNK) 二进制文件格式:
msdn.microsoft.com/en-us/library/dd871305.aspx
使用 Link Parser 进行 LNK 文件分析
Link Parser 是另一款免费工具,可以供数字取证检查员分析微软 Shell Link 文件。它由 4Discovery 开发,能够解析单个 LNK 文件、多个选定文件,或递归地遍历文件夹或挂载的取证镜像。
准备工作
访问 4Discovery 网站上的 Link Parser 页面(你可以在“另见”部分找到该链接),并下载包含工具的压缩包——在撰写时,最新版本是 1.3。解压缩压缩包后,你就可以开始使用了。
如何操作…
启动 LinkParser.exe
,点击文件夹图标,选择包含你希望工具解析的 LNK 文件的文件夹。在我们的案例中,它是 C:\Users\{username}\AppData\Roaming\Microsoft\Windows\Recent
——这个文件夹包含最近使用的项目;我们通过 FTK Imager 从取证镜像中导出了该文件夹。Link Parser 已经从 204 个 LNK 文件中提取了数据,见下图:
图 7.20. Link Parser 输出
Link Parser 从 LNK 文件中提取了大量数据——超过 30 个属性,包括卷序列号、卷标签、卷 ID 等。
所有解析的属性都可以轻松导出为 CSV
文件。操作步骤是,点击软盘图标,选择导出文件名并选择位置。之后,你可以轻松地将导出的数据导入到你最喜欢的电子表格应用中。
它是如何工作的…
Link Parser 会遍历由检查员选择的文件夹或单个 LNK 文件,并从可用的 LNK 文件中提取超过 30 个属性。解析后的数据可以导出为 CSV 文件。
另请参见
Link Parser 下载页面:
使用 Magnet AXIOM 进行预取文件分析
如果您一直在跟随本书中的教程,您应该已经知道 Magnet AXIOM 是什么,并且甚至已经使用它进行过一些 Windows 工件的取证分析。AXIOM 是一个非常好的工具,因此我们将继续展示如何使用它来解析和分析不同的有用操作系统工件:这次是预取文件。
准备工作
既然您已经使用过 AXIOM,就无需重新安装——它已经安装在您的工作站上。如果由于某些原因没有安装,请参阅“另请参见”部分,了解如何获得该工具的试用版。同时,您需要一个证据来源:法证镜像或包含预取文件的文件夹(位于 C:\Windows\Prefetch
)。一旦您找到其中之一,就可以开始了。
如何操作…
使用 Magnet AXIOM 进行预取文件分析的步骤:
- 创建一个新案件并进入加载证据。这里有五个选项:CONNECTED DRIVE、FILES & FOLDERS、COMPUTER IMAGE、VOLUME SHADOW COPY 和 MOBILE DEVICES,如下图所示:
图 7.21:加载证据选项
-
如前所述,您可以使用法证镜像或以前导出的包含预取文件的文件夹。如果您更喜欢第一种选项,选择 COMPUTER IMAGE;如果是第二种,选择 FILES & FOLDERS。在我们的例子中,它是一个文件夹,通过 AXIOM 文件夹浏览器帮助选择。
-
现在,让我们查看工件的详细信息。由于我们对预取文件感兴趣,因此从列表中只选择这些工件。点击 CUSTOMIZE COMPUTER ARTIFACTS 按钮,然后选择 CLEAR ALL,进入 OPERATING SYSTEM,勾选 Windows Prefetch Files 选项。您可以在下图中看到如何操作:
图 7.22:选择要包含在案件中的工件
- 所以,现在我们准备开始分析证据。我们仅选择了一个包含预取文件的文件夹,因此我们很快就能在 AXIOM Examine 中查看解析结果。一旦处理阶段完成,您就可以查看和分析结果,如下图所示:
图 7.23:预取文件解析结果
如您所见,我们可以获取每个程序的运行次数,并且还能获得最多八次最近运行的时间戳。这是非常有价值的信息,特别是在恶意软件取证中!
工作原理…
Magnet AXIOM 会搜索预取文件,并提取有关运行次数以及最多八次最近运行的时间戳的信息。
另请参见
尝试 Magnet AXIOM 免费版,30 天体验:
www.magnetforensics.com/try-magnet-axiom-free-30-days/
Windows 预取文件 (PF) 格式:
Windows 中的预取文件取证分析:
www.magnetforensics.com/computer-forensics/forensic-analysis-of-prefetch-files-in-windows/
使用 PECmd 解析预取文件
如果您发现了一些可疑的预取文件并希望进行深入分析,还有一个由 Eric Zimmerman 提供的工具可以帮助您——PECmd。这是一个免费的、快速的命令行工具,能够解析旧版和新版格式的 Windows 预取文件。在本指南中,我们将展示如何借助这个工具从预取文件中提取有价值的数据。
准备就绪
访问 PECmd 下载页面,获取包含该工具的归档文件——在写作时,最新版本为 0.9.0.0——并解压它。您还需要一个预取文件,或者一个包含此文件的文件夹。如您所知,可以使用您选择的工具从取证映像中导出它。一旦获得该文件,打开 Windows 命令提示符,您就可以开始了!
如何操作…
使用 PECmd 解析预取文件的步骤如下:
- 使用 Windows 命令提示符,将目录更改为您解压归档文件的所在位置,并运行以下命令:
PECmd.exe -f C:\Users\Admin\Desktop\Prefetch\ACRORD32.EXE-41B0A0C7.pf
您将很快看到输出,如下图所示:
图 7.24. PECmd 输出
- 如前图所示,我们可以获得可执行文件的名称、运行次数、最近八次运行的时间戳,甚至是目录和文件引用的列表。不错吧?
您还可以递归解析目录中的所有文件。为此,请使用以下命令:
PECmd.exe -d C:\Users\Admin\Desktop\Prefetch\
该工具体积小巧,但功能强大,非常推荐在您的取证检查中使用 Windows 预取分析。
它是如何工作的…
PECmd 从预取文件,或用户指定文件夹中的多个预取文件中提取可用信息。信息包括总的运行次数、最近运行的时间戳、目录和文件引用等。
另请参见
PECmd 下载页面:
介绍 PECmd:
binaryforay.blogspot.ru/2016/01/introducing-pecmd.html
使用 Windows 预取恢复器进行预取文件恢复
如果你想从任意二进制数据中尝试提取 Windows Prefetch 文件,有一个工具可以帮助你——Adam Witt 的 Windows Prefetch Carver。它可以用于从驱动器的未分配空间或内存镜像中提取 Prefetch 文件。在本教程中,我们将展示如何使用它。
准备工作
访问 Windows Prefetch Carver 的 GitHub 页面(见另见部分),使用绿色的“Clone or Download”按钮下载压缩包。解压该压缩包,启动 Windows 命令提示符,并切换到解压后的目录。你准备好了!
如何操作…
使用 Windows Prefetch Carver 恢复 Prefetch 文件的步骤如下:
- 对于本教程,我们使用的是 Windows 7 系统的内存镜像。该镜像名为
joshua1.vmem
- 你可以在另见部分找到该内存镜像的下载链接。现在,让我们使用这个工具。输入以下命令:
prefetch-carve.py -f joshua1.vmem -o output.txt
最终,你将得到一个包含提取数据的输出文件,如下图所示:
图 7.25. Windows Prefetch Carver 输出
- 如你所见,该工具提取了 13 条记录:时间戳、文件名和运行次数被显示出来。支持几种输出格式,包括 CSV 和 mactime。运行脚本时不带参数以了解如何以不同格式保存提取的数据。
它是如何工作的…
Windows Prefetch Carver 扫描审查员选择的任意二进制数据,并提取 Windows Prefetch 文件痕迹,包括时间戳、文件名和运行次数。
另见
Windows Prefetch Carver GitHub 页面:github.com/PoorBillionaire/Windows-Prefetch-Carver
Windows 7 内存镜像下载页面:jessekornblum.livejournal.com/293291.html
第八章:网页浏览器取证
在本章中,我们将覆盖以下示例:
-
使用 BlackBag BlackLight 进行 Mozilla Firefox 分析
-
使用 Magnet AXIOM 进行 Google Chrome 分析
-
使用 Belkasoft Evidence Center 进行 Microsoft Internet Explorer 和 Microsoft Edge 分析
-
从 Pagefile.sys 中提取网页浏览器数据
介绍
很难想象一个网页浏览器痕迹无用的案件。儿童虐待材料、知识产权盗窃、网络骚扰、恶意软件——浏览器痕迹可以帮助解决各种案件。如今,市场上有大量的网页浏览器。一些提供更强的隐私选项,另一些则没有。但即使嫌疑人使用了如臭名昭著的 Tor 这样的私人浏览器,计算机取证专家仍然能够提取一些数据,例如来自交换文件和休眠文件的数据(请查看本章的最后一个示例)或内存转储。
在本章中,我们将展示如何使用一些你已经接触过的取证工具,如 Magnet AXIOM 和 Belkasoft Evidence Center,以及一些新的工具,如 BlackBag 的 BlackLight,来进行网页浏览器取证。
最后,你将学会如何使用交换文件(pagefile.sys
和 swapfile.sys
)以及休眠文件来击败一些反取证技术。准备好了吗?
使用 BlackBag 的 BlackLight 进行 Mozilla Firefox 分析
BlackBag 的 BlackLight 是一个非常强大的数字取证工具,通常用于 macOS 系统的取证。但当然,Mac 并不是它支持的唯一平台。你还可以在 Android、iOS 和 Windows 系统上使用它进行取证。更重要的是,你可以在 Windows 和 macOS 工作站上都使用 BlackLight,这意味着你可以在 Mac 上分析 Windows 取证镜像!在本示例中,我们将展示如何使用 BlackLight 进行 Mozilla Firefox 取证。
准备工作
如果你不是 BlackLight 的授权用户,你可以在 BlackBag 网站上申请试用许可。请在 BlackLight 页面上点击“REQUEST TRIAL”按钮,填写你的个人信息,如姓名、电话、城市、电子邮件等,并点击“SUBMIT”。你将通过电子邮件收到试用密钥和产品下载链接,所以请确保你提交的是有效的电子邮件,最好是政府或企业邮箱。
现在,你需要获取一个包含 Firefox 文件的文件夹来进行分析。如果你使用的是 Windows XP 系统,请查看这里:
C:\Documents and Settings\%USERNAME%\Application Data\Mozilla\Firefox\
如果你正在处理一个 Windows Vista 系统(或更高版本),请查看这里:
C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\%PROFILE%.default
在其他文件中,你会找到一些非常有价值的 SQLite 数据库。这些数据库包含浏览历史、下载等信息,BlackLight 将帮助我们提取和分析这些数据。
如何操作…
Mozilla Firefox 分析的步骤如下:
- 打开 BlackLight 并创建一个新案件。为此,点击“文件” - “新建案件”,或者直接点击**新建…**按钮,选择案件存储位置。保存案件后,你可以开始填写必要的字段并选择正确的时区,如下图所示:
图 8.1. 案件详情
- 现在我们准备好添加证据了。点击证据前面的绿色添加按钮。由于我们已经导出了一个 Firefox 配置文件文件夹,点击绿色添加按钮,再点击添加文件夹按钮,并选择你导出的文件夹。
图 8.2. 添加证据
- 数据处理完成后,你应该能在互联网选项卡中找到提取的数据。如果出于某种原因该选项卡没有显示所需内容,你可以手动分析 Firefox SQLite 数据库——BlackLight 配备了强大的内置 SQLite 浏览器!
让我们使用它并分析 places.sqlite
——一个包含嫌疑人浏览历史信息的 SQLite 数据库。转到浏览器选项卡,选择数据库,并使用预览功能通过 BlackLight SQLite 浏览器进行检查。
图 8.3. 手动分析 ‘places.sqlite’ SQLite 数据库
- 日期/时间功能。你是否注意到恢复的碎片表格?这可以帮助检查员恢复已删除的数据——在我们的案例中,恢复的是已删除的浏览历史记录。
工作原理…
BlackLight 分析 Firefox 数据库并提取可用数据(包括已删除的数据)以供进一步检查,包括历史记录、书签、下载、表单数据、Cookies 等等。此外,内置的 SQLite 浏览器使得检查员可以手动分析这些数据库。
另见
BlackBag BlackLight 页面:www.blackbagtech.com/blacklight.html
BlackBag BlackLight 快速入门指南:www.blackbagtech.com/resources/quickstart-guides/quickstart-guide-blacklight.html
使用 Magnet AXIOM 分析 Google Chrome
Google Chrome 是另一个非常流行的网页浏览器。你会在许多取证检查中发现其证据,不仅仅是在 Windows 系统上,还有 macOS、Linux,甚至移动平台。借助这个教程,你将学会如何使用 Magnet AXIOM 解析 Google Chrome 证据。
准备工作
当然,你可以使用整个取证镜像作为源文件,但从用户的个人资料中提取 Google Chrome 文件夹要快得多,因为这大大减少了需要解析的数据集。你可以在以下位置找到所需的文件夹:
Windows XP:
C:\Documents and Settings\%USERNAME%\Local Settings\Application Data\Google\Chrome
Windows Vista 及以上:
C:\Users\%USERNAME%\AppData\Local\Google\Chrome
导出文件夹,确保在取证工作站上安装了有效的 Magnet AXIOM 许可证或试用版,并且已准备好。
如何操作…
在 AXIOM 中创建一个新案件,使用你导出的文件夹作为证据源,并确保在证据列表中选择 Google Chrome。完成所有这些步骤后,运行证据分析。过程不会花费太多时间,但你会获得许多有用的取证证据。我们案例中提取的证据如下图所示。
图 8.4. 使用 Magnet AXIOM 提取的 Google Chrome 证据
如你在上图中所见,证据数量相当多。让我们更深入地了解一下。
-
Chrome 自动填充配置文件 - Chrome 用于自动填写表单字段的配置文件。
-
Chrome 书签是用户添加的网页书签。
-
Chrome 缓存记录是浏览器为加速网页加载而下载的文件。这些文件可能包括图片、HTML、Javascript 等。
-
Chrome Cookies - 包含用户访问过的网站信息的小文件。
-
Chrome 当前会话 - 当前会话的信息。
-
Chrome 当前标签页 - 当前会话中打开的标签页。
-
Chrome 下载文件 - 使用 Google Chrome 下载的文件。
-
Chrome 网站图标 - 来自 Chrome 地址栏的图标。
-
Chrome 搜索关键词 - 用户输入的搜索关键词。
-
Chrome 上次会话 - 上一会话的信息。
-
Chrome 上次标签页 - 上一会话中打开的标签页。
-
Chrome 登录信息 - Chrome 保存的用户登录信息。
-
Chrome 快捷方式 - 用户输入的 URL 快捷方式。
-
Chrome 同步账户 - 用于同步到云端的用户账户。
-
Chrome 同步数据 - 同步到云端的数据。
-
Chrome 常用网站 - 最常访问的网站。
-
Chrome 网页历史 - 用户访问过的网站(仅限独立访问)。
-
Chrome 网页访问 - 用户访问过的网站(所有访问记录)。
此外,AXIOM 使用切割技术从 Chrome 数据库中恢复已删除的数据。
如何操作…
Magnet AXIOM 从取证映像、驱动器、文件夹或由数字取证员指定的文件中查找并解析 Google Chrome 证据。解析后的证据会分为几个组,以便进一步取证。
参见
数字取证:Google Chrome 证据概况:
www.magnetforensics.com/artifact-profiles/artifact-profile-google-chrome/
使用 Belkasoft Evidence Center 分析 Microsoft Internet Explorer 和 Microsoft Edge
希望您已经将 Belkasoft Evidence Center 添加到您的 Windows 取证工具包中。正如您所记得,它可以帮助您从内存转储中提取数据。当然,这并不是它唯一能帮助您解决的任务。它还强力支持数百种 Windows 操作系统的取证痕迹,包括不同的网页浏览器。在本例中,我们将展示如何使用它进行 Microsoft Internet Explorer 和 Microsoft Edge 的取证分析。
准备工作
如果您已经安装了 Belkasoft Evidence Center,只需启动该工具即可。否则,请通过 See also 部分的试用下载链接获取该工具的试用版。您将需要一个 Windows 10 镜像,因为我们打算分析 Microsoft Edge 数据。
如何操作…
使用 Belkasoft Evidence Center 分析 Microsoft Edge 和 Microsoft Internet Explorer 的步骤如下:
- 首先,让我们创建一个新案件。填写案件信息,选择根文件夹(案件文件夹将自动创建),并确保从下拉菜单中选择正确的时区。如果需要,您还可以添加案件描述。
图 8.5. 在 Belkasoft Evidence Center 中创建新案件
- 现在是选择数据源的时候了。如您所见,下面的图中显示了多个选项。这一次,我们将选择一个驱动器镜像。我们有一个名为
Browsers.E01
的测试镜像。如果您创建了 Windows 10 驱动器的镜像,可以使用它进行此操作,否则,找到一个这样的系统并通过镜像它来巩固您的知识。同时,您也可以创建一个 Windows 10 虚拟机,并使用其虚拟磁盘——Belkasoft Evidence Center 也支持此类磁盘。
图 8.6. 在 Belkasoft Evidence Center 中添加数据源
- 让我们选择要搜索的取证痕迹。首先,点击 Select none 取消勾选所有数据类型。然后,转到浏览器,在左侧窗格中滚动到 Windows,选择 Edge 和 Internet Explorer。别忘了勾选 Carve 选项,以提取更多数据!
图 8.7. 在 Belkasoft Evidence Center 中选择数据类型
一旦镜像处理完成,您将看到概览和案件资源管理器标签中的所有结果。
图 8.8. 概览标签
- 如果深入挖掘并分析浏览器历史记录的取证痕迹,您会注意到所有历史记录都标记为 Internet Explorer 10+。这是因为 Internet Explorer 和 Edge 都将历史记录存储在同一个数据库中,路径为:
C:\Users\%USERNAME%\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat
此外,你还可以看到前图中的“已输入 URL”部分。这些 URL 是用户直接在浏览器地址栏中输入的,并存储在注册表中。你可以在第六章中了解更多关于 Windows 注册表取证的内容,Windows 注册表分析。
工作原理…
Belkasoft Evidence Center 会遍历所有文件和文件夹,并从网页浏览器中提取可用的数据。如果启用了 carving,它还会从未分配空间中提取数据。
另见
Belkasoft Evidence Center 下载页面:
Internet Explorer 开发者文档:
msdn.microsoft.com/zh-cn/library/hh772401(v=vs.85).aspx
Microsoft Edge 开发者文档:
docs.microsoft.com/zh-cn/microsoft-edge/
从 Pagefile.sys 提取网页浏览器数据
你已经知道,可以从内存转储中提取很多有用的取证信息。但更进一步的是,即使没有内存转储,你也可以进行内存取证!驱动器上有一些文件包含了内存的部分内容。这些文件是 pagefile.sys
、swapfile.sys
和 hiberfil.sys
,并且它们位于系统根目录(C:\
)。在这个教程中,我们将向你展示如何使用 Belkasoft Evidence Center 从 pagefile.sys
中提取浏览器数据。
准备工作
首先,确保你的工作站上安装了有效许可(或试用版)的 Belkasoft Evidence Center。然后,使用你选择的工具,例如 FTK Imager,从你自己的系统或之前获取的取证镜像中导出数据。准备好这些后,你就可以开始操作了。
如何操作…
从 Pagefile.sys
提取网页浏览器数据的步骤如下:
- 首先在 Belkasoft Evidence Center 中创建一个新案件——你已经知道如何操作了。然后,添加你之前导出的
pagefile.sys
文件作为证据源。
图 8.9. 添加 pagefile.sys 作为证据源
- 由于我们计划提取网页浏览器的取证信息,并且正在处理 Windows 系统,选择相应的数据类型,如下图所示:
图 8.10. 选择数据类型
- 点击“完成”,处理将开始。处理阶段完成后,转到“概述”选项卡查看结果。
图 8.11. 处理结果
如前图所示,我们已经从 pagefile.sys 提取了 2289 个 URL!令人印象深刻,不是吗?你也可以对另外两个文件进行相同的操作:swapfile.sys 和 hiberfil.sys。
工作原理…
Belkasoft Evidence Center 通过Pagefile.sys
文件进行分析,并从可用的网页浏览器中提取记录。如果数字取证分析师选择更多数据类型,还可以提取更多数据,包括图片、消息、电子邮件等。
另见
那么,页面文件到底是干什么用的?
blogs.technet.microsoft.com/askperf/2007/12/14/what-is-the-page-file-for-anyway/
分析休眠文件和页面文件:
ru.belkasoft.com/ru/bec/en/Hibernation_And_Page_Files_Investigation.asp