Kali Linux 数字取证(一)

原文:annas-archive.org/md5/8FE31A420313B3F8EBAD75F795E950BF

译者:飞龙

协议:CC BY-NC-SA 4.0

前言

在今天的世界中,新的威胁、违规行为和恶意活动经常在新闻、网站和门户网站上被发现和发布。尽管我们尽力保护我们的数据、系统和网络,但仍然会发生违规行为。为了了解发生了什么,我们转向数字取证领域。尽管数字取证仍然是一个相对较新的领域,但在考虑到任何访问互联网并意图进行恶意活动的人可以获得的大量信息时,取证已经变得和安全一样重要。值得庆幸的是,数字指纹和工件有时会留下痕迹,无论是在已删除或隐藏的文件、电子邮件、某人的浏览历史、远程连接列表,甚至是移动短信中。

这本书甚至为绝对初学者提供了一个结构化的方法和最佳实践,以使用 Kali Linux 中流行且强大的取证工具进行调查,其中许多工具被世界各地的军事组织和取证调查人员使用。

本书涵盖的内容

第一章,“数字取证简介”,介绍了数字取证科学的各个方面。

第二章,“安装 Kali Linux”,展示了如何安装、配置和更新 Kali Linux。安装过程将在物理机和虚拟机上进行,以使单台和多台机器的用户都能受益于运行 Kali Linux。安装完成后,我们将探索 Kali Linux 中的取证菜单。

第三章,“理解文件系统和存储介质”,深入探讨操作系统和文件存储的各种格式,包括即使对于最终用户或操作系统也看不到的秘密隐藏位置。我们还检查关于数据的数据,即元数据,并研究其易失性。

第四章,“事件响应和数据获取”,询问当事件被报告或检测到时会发生什么?谁是第一响应者,以及维护证据完整性的程序是什么?在本章中,我们将探讨数据获取和证据收集的最佳实践和程序。

第五章,“使用 DC3DD 和 Guymager 进行证据获取和保留”,着重介绍了取证获取中最重要的一个方面。学会使用哈希工具创建数据的取证镜像,并保持完整性。

第六章,“使用 Foremost、Scalpel 和 Bulk Extractor 进行文件恢复和数据刻录”,指出数据会消失,无论是意外地、故意地还是只是隐藏在操作系统中。在本章中,我们将介绍两种强大的工具用于执行文件恢复,并了解高级搜索功能。

第七章,“使用 Volatility 进行内存取证”,指出在当今数字世界中,我们有时会遇到需要使用活动内存取证的情况。学会使用这个强大的内存取证工具来查看运行中的进程、程序和活动工件。

第八章,“Autopsy – The Sleuth Kit”,介绍了 Autopsy,它被认为是为数不多的可以与商业取证工具匹敌的工具之一,这个强大的工具将取证能力和调查提升到专业水平,涵盖了从哈希到报告的全方位数字取证调查的所有方面。

第九章,“使用 Xplico 进行网络和互联网捕获分析”,使用这个强大的工具对捕获的网络和互联网流量进行调查和分析。

第十章,使用 DFF 揭示证据,展示了两个工具胜过一个的原理。使用另一个高级取证框架工具进行完整和专业的数字取证调查,通过比较结果来确保您发现的结果的完整性。

本书所需内容

要按照本书中的练习,读者需要下载以下内容:

  • Kali Linux 2017.2 x64 和 Kali Linux 2017.1 x64

  • VirtualBox 5.2 或更高版本

  • 将 Kali Linux 2017.2 刻录到 DVD

这本书适合谁

本书适用于网络、系统和安全管理员;信息安全官员;审计员;IT 经理;以及学生、研究人员、安全爱好者以及对数字取证领域感兴趣或有兴趣了解各个调查阶段的特定工具的任何人,从证据获取和保留到分析,使用强大的取证套件。

约定

在本书中,您将找到许多文本样式,用于区分不同类型的信息。以下是一些这些样式的示例及其含义的解释。文本中的代码词、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 URL、用户输入和 Twitter 句柄显示如下:“要开始安装 DFF,我们首先需要使用 Kali Sana 中使用的存储库更新sources.list。”

代码块设置如下:

deb http://http.kali.org/kali kali-rolling main contrib non-free
deb src http://http.kali.org/kali kali-rolling main contrib non-free
deb http://http.kali.org/kali sana main contrib 

当我们希望引起您对代码块的特定部分的注意时,相关行或项目将以粗体显示:

deb http://http.kali.org/kali kali-rolling main contrib non-free
deb src http://http.kali.org/kali kali-rolling main contrib non-free
deb http://http.kali.org/kali sana main contrib 

任何命令行输入或输出都写成如下形式:

dc3dd if=/dev/sdb hash=sha1 log=dd_split_usb ofsz=500M ofs=split_test_usb.img.ooo

新术语重要单词以粗体显示。

警告或重要说明显示如下。

提示和技巧显示如下。

第一章:数字取证简介

数字取证已经吸引了我超过 13 年的注意。自从我得到了我的第一台个人电脑(谢谢,爸妈)以来,我一直想知道当我从我的巨大的 2GB 硬盘驱动器中删除文件或将文件移动(大多数时候是隐藏)到一个不那么显眼的 3.5 英寸软盘中,会发生什么,这个软盘的容量最多只有 1.44MB。

正如我很快了解到的那样,硬盘驱动器和软盘驱动器并没有我如此自信地相信的数字不朽。可悲的是,许多文件、文档和由我亲自在 Microsoft Paint 中创作的无价艺术品都消失在了数字世界中,再也无法找回了。叹息。世界将永远不会知道。

直到多年后,我在浏览互联网时偶然发现了一篇关于文件恢复和相关工具的文章,这是在我拥有闪电般快速的 42Kbps 拨号互联网连接时(这得益于我非常昂贵的 USRobotics 拨号调制解调器),每次我尝试连接到互联网的时候,都会唱出科技之神的赞歌。这个过程需要一种像忍者一样的隐秘技能,即使是黑色行动小组也会羡慕,因为这样做是不让父母注意到的,这样他们就无法使用电话线打电话或接电话了。(对不起,亲爱的母亲、父亲和年长的姐姐)。

之前关于数据恢复的文章并不像今天广泛可得的许多优秀的同行评议论文、期刊和书籍那样详细和充满事实。作为一个完全的新手(也被称为 noob),我确实学到了很多关于文件系统、数据和元数据、存储测量以及各种存储介质的基础知识。

就在这个时候,尽管我已经阅读过关于 Linux 操作系统及其各种发行版(或 distros)的文章,我开始了解为什么 Linux distros 在数据恢复和取证中如此受欢迎。

在那个时候,我勇敢地在拨号连接上下载了 Auditor 和 Slax Linux 发行版。仅仅下载这些操作系统就是一项了不起的成就,这让我感到非常自豪,因为我根本不知道如何安装它们,更不用说真正使用它们了。在那些日子里,易安装和图形用户界面仍在积极开发中,正如它们当时一样用户友好,或者在我这种情况下,用户不友好(主要是因为我的经验不足,缺乏推荐的硬件,以及缺乏在线论坛、博客和 YouTube 等资源……这些我当时还不知道)。我将在第二章中更多地解释 Auditor 和 Slax 操作系统,安装 Kali Linux,包括它们在臭名昭著的 BackTrack 和现在的 Kali Linux 操作系统中的作用。

随着时间的推移,我研究了在 Windows、Macintosh 和许多 Linux 发行版上找到的许多工具。我发现许多数字取证中使用的工具可以安装在各种 Linux 发行版或版本中,这些工具都得到了良好的维护,不断地在发展,并且被同行广泛接受。Kali Linux 是一种 Linux 发行版或版本,但在我们继续之前,让我解释一下 Linux 发行版或版本的概念。想象一下你最喜欢的饮料:这种饮料可以有很多口味,有些没有甜味剂或糖,有不同的颜色,甚至有不同的大小。无论有什么变化,它仍然是组成饮料的基本成分。同样,我们也有 Linux,以及不同类型和品种的 Linux。一些更受欢迎的 Linux 发行版和版本包括 RedHat、CentOS、Ubuntu、Mint、Knoppix,当然还有 Kali Linux。关于 Kali Linux 的更多内容将在第二章中讨论,安装 Kali Linux

对于本书,我们采取了非常结构化的数字取证方法,就像我们在法庭科学中一样。我们首先进入数字取证的世界,了解其历史,一些用于取证的工具和操作系统,并立即向您介绍涉及证据保全的概念。

我们开始吧。让我们开始吧!

本章介绍了数字取证科学的各个方面。

本章我们将涵盖的主题有:

  • 什么是数字取证?

  • 数字取证方法。

  • 数字取证的简史。

  • 随着技术的进步,数字取证的需求也在增加。

  • 反取证:对数字取证的威胁

  • 数字取证领域可用的商业工具。

  • 开源工具。

  • 内置数字取证工具的操作系统。

  • 在调查中需要使用多种取证工具,以提供强有力的完整性证据。

什么是数字取证?

我想在本章中首先介绍的是对数字取证及其正确实践和程序的理解。在某个时候,你可能已经接触过几本书、博客,甚至演示了数字取证的各个方面和不同的工具。重要的是要理解,取证本身是一门科学,涉及非常详细的最佳实践和方法,以揭示某事是否存在。

数字取证涉及对各种存储介质中的证据进行保全、获取、文档化、分析和解释。它不仅限于笔记本电脑、台式机、平板电脑和移动设备,还包括在公共或私人网络上传输的数据。

在大多数情况下,数字取证涉及使用各种方法和工具来发现和/或恢复数据。数字取证调查包括但不限于:

  • 数据恢复:调查和恢复可能已被删除、更改为不同文件扩展名甚至隐藏的数据。

  • 身份盗窃:许多欺诈活动,从盗用信用卡到虚假社交媒体资料,通常涉及某种形式的身份盗窃。

  • 恶意软件和勒索软件调查:迄今为止,通过特洛伊木马和蠕虫传播的勒索软件是公司、军事组织和个人面临的最大威胁之一。恶意软件也可能传播到移动设备和智能设备上。

  • 网络和互联网调查:调查DoS(称为拒绝服务)和DDoS(称为分布式拒绝服务)攻击,并追踪访问的设备,包括打印机和文件。

  • 电子邮件调查:调查源和 IP 来源、附件内容和地理位置信息都可以进行调查。

  • 企业间谍活动:许多公司正在摆脱纸质副本,转向云和传统磁盘媒体。因此,总是会留下数字足迹;如果敏感信息被访问或传输,会留下数字足迹吗?

  • 儿童色情调查:可悲的是,儿童在互联网和深网中被广泛剥削。借助技术和高技能的取证分析师,可以通过分析互联网流量、浏览器历史、支付交易、电子邮件记录和图像来进行调查,以打击剥削团伙。

数字取证方法

请记住,取证是一门科学,数字取证要求人们遵循适当的最佳实践和程序,以便一次又一次地产生相同的结果,提供证据、保全和完整性的证明,这些可以被复制;如果需要的话。

尽管许多人可能不会进行数字取证以作为法庭证据,最好还是以一种可以在法庭上被接受和呈现的方式进行实践。遵循专门从事数字取证和事件响应的组织制定的最佳实践的主要目的是在调查期间保持证据的完整性。如果调查人员的工作必须由另一方或对立方进行审查和批评,调查人员发现的结果必须能够被重现,从而证明调查的完整性。这样做的目的是确保您的方法可以重复,并且如果被剖析或审查,每次都能产生相同的结果。所使用的方法,包括调查的程序和结果,应始终允许数据的完整性得到维护,无论使用何种工具。

本书中展示的最佳实践确保原始证据未被篡改,或者在调查设备和数据的实时或生产环境中,展示了在调查过程中采取了必要步骤以避免对证据进行不必要的篡改,从而保持了证据的完整性。对于完全不熟悉调查的人,我建议熟悉一些专业社区提供的各种实践和方法。

因此,存在一些指南和方法论,人们应该采用,或者至少遵循,以确保检查和调查在法医上是可靠的。

本章提到的两个最佳实践文件是:

  • ACPO 的数字证据良好实践指南

  • SWGDE 的计算机取证最佳实践。

尽管这篇文章是在 2012 年写的,但英国首席警官协会(ACPO),现在作为国家警察局长委员会(NPCO)运作,提出了一份名为《ACPO 数字证据良好实践指南》的 PDF 文件,其中介绍了进行数字取证调查时的最佳实践,特别关注证据获取。《ACPO 数字证据良好实践指南》随后被英格兰、威尔士和北爱尔兰的执法机构采纳和遵守,并可在www.7safe.com/docs/default-source/default-document-library/acpo_guidelines_computer_evidence_v4_web.pdf上完整下载。

另一份有用且更为最新的文件是在 2014 年 9 月发布的,关于数字取证最佳实践的文件,由科学数字证据工作组(SWGDE)发布。SWGDE 成立于 1998 年,由联邦犯罪实验室主任组成,主要成员和贡献者包括联邦调查局、缉毒局、美国国家航空航天局和国防部计算机取证实验室。尽管该文件详细介绍了正式计算机取证实验室环境中的程序和实践,但这些实践仍然可以应用于目前不在或无法接触到这种环境的非实验室调查人员。

《SWGDE 计算机取证最佳实践》阐明了以下章节涵盖的许多主题:

  • 证据收集和获取

  • 调查通电和断电的设备

  • 证据处理

  • 分析和报告

完整文件可在www.swgde.org/documents/Current%20Documents/SWGDE%20Best%20Practices%20for%20Computer%20Forensics上公开获取。

数字取证的简要历史

尽管法庭科学本身(包括第一次记录的指纹)已经存在了 100 多年,但与数字世界相关的数字取证是一个更年轻的领域,主要是在 20 世纪 80 年代个人计算机问世后才开始流行。

为了比较,试图理解数字取证作为相对较新的概念,考虑到第一个实际的法庭科学实验室是由 FBI 于 1932 年开发的。

数字取证调查中最早使用的一些工具是在 1984 年左右由 FBI 实验室开发的,数字取证调查由 FBI 的专门的 CART(计算机分析和响应团队)领导,该团队负责协助数字调查。

数字取证作为自己的领域在 20 世纪 90 年代大幅增长,几个执法机构和部门负责人合作,甚至定期会面,将他们的专业知识带到桌面。

最早的正式会议之一是由 FBI 于 1993 年举办的。这次名为“国际执法部门计算机证据会议”的活动的主要焦点是解决数字取证和证据获取的正式标准和程序的需求。

许多这些会议导致了处理数字取证标准和最佳实践的机构的形成。例如,SWGDE 是由联邦犯罪实验室主任于 1998 年成立的。SWGDE 负责制定被广泛采用的计算机证据最佳实践(本章后面讨论)。SWGDE 还与其他组织合作,例如成立于 1973 年的非常受欢迎的美国犯罪实验室主任协会(ASCLDs),自那时以来一直在最佳实践、程序和培训的持续发展方面发挥着重要作用,与法庭科学相关。

然而,直到 21 世纪初,FBI 才建立了一个正式的区域计算机取证实验室(RCFL)。2002 年,成立了国家计划办公室(NPO),作为一个中央机构,基本上协调和支持 RCFL 执法部门之间的努力。

自那时以来,我们已经看到几个机构,如 FBI、CIA、NSA 和 GCHQ,每个机构都有自己的完整网络犯罪部门、完整的数字取证实验室、专门的现场和外勤特工,努力合作,以应对可能是不折不扣的 Sisyphean 任务,考虑到技术的快速增长和对互联网甚至暗网的更容易访问。

随着技术的进步,数字取证工具必须定期更新,不仅是为了打击网络犯罪,还为了提供问责制和检索丢失的数据。自从软盘、磁盘驱动器和拨号上网访问的日子以来,我们已经走了很长一段路,现在面临着 SD 卡、固态驱动器和以千兆速度的光纤互联网连接。

随着技术的进步,数字取证的需求

你们中的一些人可能年轻到足以记得 Windows 95、3.x 甚至 DOS(磁盘操作系统)的日子。今天的智能手表、计算器和许多物联网设备比第一代个人计算机和服务器快得多。1995 年,常见的硬盘驱动器容量在 4GB 到 10GB 之间,而今天你可以轻松购买容量为 2TB 及以上的驱动器。

还要考虑今天的各种存储介质,包括闪存驱动器、SD 卡、CD、DVD、蓝光光盘、混合和固态驱动器,与旧的软盘相比,后者在其最紧凑和高效的状态下只能在 3 ¼英寸的磁盘上存储 1.44 MB 的数据。尽管在后面的章节中有详细讨论,但我们现在不仅有许多存储数据的选项,还有丢失和隐藏数据的选项。

随着技术的进步,人们对编程语言、普通和高级操作系统的理解更加深入,对数字设备的知识和利用也更加深入。这也转化为更加用户友好的界面,可以完成许多与 CLI 相同的任务,主要由高级用户使用。基本上,今天的简单 GUI,再加上搜索引擎上随处可见的大量资源,可以使某些任务(如隐藏数据)比以前更容易。

隐藏大量数据如今也更加简单,考虑到处理器的速度,加上大量的内存,包括可以充当内存的设备,远远超过了仅仅五年前的情况。还必须提到和考虑到显卡,因为越来越多的移动设备配备了非常强大的高端 NVIDIA 和 ATI 显卡,它们也有自己独立的内存,有助于处理过程。考虑到所有这些因素确实支持了戈登·E·摩尔在 20 世纪 70 年代提出的一个观点,即计算能力每两年翻一番,通常被称为摩尔定律。

然而,英伟达首席执行官黄仁勋最近表示,由于 GPU(图形处理单元)的性能、技术进步和处理人工智能的能力,摩尔定律正在消失,GPU 最终将取代 CPU。黄仁勋的声明也得到了英特尔首席执行官布莱恩·克兰齐奇的支持。

总的来说,现在有几种进行网络犯罪的途径,包括恶意软件和勒索软件分发,DoS 和 DDoS 攻击,间谍活动,勒索,身份盗窃,数据盗窃,非法在线活动和交易以及大量其他恶意活动。其中许多活动是匿名的,因为它们发生在互联网上,通常使用掩盖的 IP 地址和公共网络进行,因此使得相关机构在确定位置和逮捕嫌疑人方面更加困难。

由于网络犯罪是一门大生意,执法官员和机构的反应在研究、开发、情报和培训部门必须同样令人印象深刻,如果他们要在数字世界中进行看似永无止境的战斗中进行抵抗。

数字取证不仅适用于存储介质,还适用于网络和互联网连接、移动设备、物联网设备,实际上,任何可以存储、访问或传输数据的设备。因此,根据手头的任务,我们有各种商业和开源工具可供选择。

数字取证领域提供的商业工具

尽管本书关注 Kali Linux 操作系统中的工具,但重要的是要认识到我们可以使用的商业工具,其中许多工具在确定偏好之前可以作为试用版或演示版下载。

由于本书主要关注开源工具,我只会提及一些更受欢迎的商业工具以及它们的主页。这些工具仅按字母顺序列出,不反映任何评级、评论或作者的个人偏好:

许多商业工具都允许以下功能,并且还提供几个专有功能,包括:

  • 写入阻塞

  • 逐位或比特流复制和磁盘克隆/证据克隆

  • 取证合规的证据获取

  • 使用哈希保留证据

  • 文件恢复(隐藏和删除)

  • 现场和远程取证

  • RAM 和交换/分页文件分析

  • 镜像挂载(支持各种格式)

  • 高级数据和元数据(关于数据的数据)搜索和过滤

  • 文件和扇区的书签

  • 哈希和密码破解

  • 自动生成报告

商业工具的主要优势通常是自动化,并且实际上是一套几乎总是可以完成整个调查的工具,只需点击几下。我必须提到的另一个优势是购买许可证时提供的工具支持。这些工具的开发人员还雇用研究和开发团队,以确保对其当前和新产品进行持续测试和审查。

数字取证的操作系统和开源工具

就像有几种商业工具可用一样,调查人员和业余和专业人员也有许多开源工具可用。其中许多工具是基于 Linux 的,并且可以在几个免费的取证发行版中找到。

在选择工具时通常出现的主要问题通常基于商业与开源。无论使用商业工具还是开源工具,最终结果应该是相同的,即保留和保持原始证据的完整性应该是首要任务。

预算始终是一个问题,一些商业工具(尽管它们可能非常强大、准确和用户友好)可能会花费数千美元。

开源工具可以免费使用,根据不同的开源许可证,不应该被排除在外,只因为它们没有企业开发人员和研究人员的支持。许多开源工具受到取证社区的广泛审查,可能会更受到审查,因为它们更广泛地向公众开放,并且是以非专有代码构建的。

尽管本书的重点是 Kali Linux 中的取证工具,我们将在本节末尾和之后开始查看,但以下是一些更受欢迎的开源取证发行版或发行版。

以下各节提到的发行版都可以在许多地方免费获得,但出于安全原因,我们将提供它们主页的直接链接。本节中展示的操作系统仅按字母顺序列出,并不反映任何评级、评论,甚至不反映作者的个人偏好。

数字取证和取证工具 Linux

数字取证和取证工具DEFT)Linux 有完整版本和称为DEFT Zero的轻量级版本。出于取证目的,您可能希望下载完整版本,因为 Zero 版本不支持移动取证和密码破解功能。

就像本列表中提到的其他发行版一样,DEFT 也是一个完全功能的现场响应取证工具,可以在无法关闭计算机的情况下使用,并且还允许对 RAM 和交换文件进行即时分析:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

从 DEFT Linux DVD、可启动的闪存或其他媒体启动时,用户会看到各种选项,包括将 DEFT Linux 安装到硬盘,或者选择 DEFT Linux 8 live 选项,作为现场响应工具或操作系统使用。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在上一张截图中,可以看到 DEFT Linux 8 中有几个取证类别,如反恶意软件、数据恢复、哈希、成像、移动取证和网络取证、密码恢复和报告工具。在每个类别中都有几个由各种开发人员创建的工具,给调查人员提供了多种选择。

有关Digital Evidence Forensic ToolkitDEFT)Linux 操作系统在本出版时包含的功能和软件包的完整列表,请访问以下链接:

www.deftlinux.net/package-list/

计算机辅助调查环境

计算机辅助调查环境CAINE)是一个可启动的现场响应 CD/DVD,具有安全模式、文本模式、作为现场系统或在 RAM 中启动的选项,如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在选择启动选项后,CAINE 最引人注目的特点之一是轻松找到写入阻断器功能,如下图所示的 BlockON/OFF 图标。激活此功能可以防止 CAINE OS 向证据机器或驱动器写入数据:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 CAINE 中,取证工具是列出的第一个菜单。与 DEFT Linux 一样,在菜单中有几个类别,如下图所示,其中包含一些在开源取证中使用的更受欢迎的工具。除了类别外,还有一些直接链接到一些更知名的工具,如GuymagerAutopsy,这两者都将在后面的章节中详细介绍:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

有关 CAINE 在本出版时包含的功能和软件包的完整列表,请访问以下链接:

www.caine-live.net/page11/page11.html

Kali Linux

最后,我们来到这个可爱的宝石,Kali Linux,在下一章和本书的整个过程中将详细讨论其从安装到高级取证使用的细节。

  • 主页www.kali.org/

  • 基于:Debian

  • 发行类型:渗透测试、取证和反取证

Kali Linux 是作为渗透测试或渗透测试发行版而创建的,最初名为 BackTrack,后来在 2015 年演变为 Kali Linux。这个强大的工具是全球渗透测试人员和安全爱好者的首选工具。作为Certified EC-Council InstructorCEI)的Certified Ethical HackerCEH)课程,这个操作系统通常是课堂上的明星,因为它包含了许多令人印象深刻的捆绑安全程序,从扫描和侦察工具到高级利用工具和报告工具。

与上述工具一样,Kali Linux 可以用作现场响应取证工具,因为它包含了进行全面调查所需的许多工具。但是,Kali 也可以用作完整的操作系统,因为它可以完全安装到硬盘或闪存驱动器上,并且还包含了一些用于生产力和娱乐的工具。它配备了许多成功使用硬件、图形和网络所需的驱动程序,并且在 32 位和 64 位系统上以最少的资源平稳运行;它还可以安装在某些移动设备上,如NexusOnePlus手机和平板电脑上。

除了其多功能性之外,从光盘/闪存驱动器启动时,调查人员还有几个选择,包括现场(取证模式),这样可以保持证据驱动器的完整性,并且不会干扰它,同时还禁用了任何闪存驱动器和其他存储介质的自动挂载,确保在整个调查过程中原始证据的完整性。

当从 DVD 或闪存驱动器启动到 Kali Linux 时,用户首先会看到现场环境和安装的选项。从列表中选择第三个选项将进入现场(取证模式),如下面的屏幕截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦 Kali Live(取证模式)启动,调查人员将看到与在 Kali 中使用任何 GUI 时看到的完全相同的主屏幕,如下面的屏幕截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

单击“应用程序”可以在左上角找到 Kali 菜单。这将带用户进入菜单列表,显示较低的取证类别,如 11-取证。以下屏幕截图展示了 Kali 中一些取证工具的情况,我们将在本书中稍后使用:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

应该注意的是,列出的工具并不是 Kali 中唯一可用的工具。正如我们将在后面的章节中看到的,还有其他几个工具可以通过终端调用。

值得注意的是,当它处于取证模式时,Kali 不仅不会篡改原始证据驱动器,而且也不会向交换文件中写入数据,其中可能存储了最近访问和存储在内存中的重要数据。

下面的屏幕截图显示了使用侧边栏菜单中最后一个图标(类似于方形中的九个点)访问取证工具菜单的另一个视图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

有关 Kali Linux 操作系统在发布时包含的功能和软件包的完整列表,请访问以下链接:

tools.kali.org/tools-listing

在提到的三个取证发行版中,Kali 可以作为现场响应取证工具运行,但也可以像 Windows、Mac 和 Android 一样作为完整的操作系统使用,因为它包含了几个内置的生产力和日常使用工具。Kali 可以安装到硬盘上,这意味着可以定期下载和更新其他工具,持续访问所有 IT 安全和取证工具,允许用户在使用工具时保存进度,而不必过多担心重新启动他们的机器,如果他们决定将其用作完整的操作系统。

使用这些开源取证操作系统,如 Kali,为我们提供了一系列可供选择和使用的工具。在每个发行版的每个类别中都有许多执行相同任务的工具。这是好事,因为我们的发现应该能够使用不同的工具来复制。这在调查人员的工作可能受到批评,案件和证据的完整性受到质疑和审查的情况下尤为重要;正确使用多个工具将产生一致的结果。

数字调查中需要多个取证工具

证据保全至关重要。正确使用商业和开源工具将产生结果;然而,为了获得法医学上可靠的结果,有时最好使用多个工具并产生相同的结果。

使用多个工具的另一个原因可能仅仅是成本。我们中的一些人可能有很大的预算可以使用,而其他人可能根本没有或预算有限。商业工具可能成本高昂,特别是由于研发、测试、广告和其他因素。开源工具虽然经过社区测试,但可能没有商业工具那样的资源和资金。

那么,我们如何知道选择哪些工具呢?

数字取证通常非常耗时,这也是您可能希望使用多个证据的数字取证副本的原因之一。这样,您可以同时使用不同的工具来加快调查的进展。虽然快速工具可能是一件好事,但我们也应该质疑工具的可靠性和准确性。

国家标准与技术研究所NIST)制定了一个计算机取证工具测试CFTT)计划,测试数字取证工具并将所有发现结果提供给公众。根据其特定能力选择了几种工具,并将其放入磁盘成像、刻录和文件恢复等测试类别。每个类别都有一个正式的测试计划和测试策略,以及一个可供公众查阅的验证报告。

有关 CFTT 计划的更多信息可以在www.cftt.nist.gov/disk_imaging.htm找到。有关本书涵盖的许多工具的测试和验证报告可以在www.dhs.gov/science-and-technology/nist-cftt-reports找到。

为了强调使用多个工具来维护调查和发现的完整性的重要性,本书的第三和第四部分将演示多个工具。

反取证:对数字取证的威胁

尽管我们希望数字取证中涉及的任务尽可能简单,但我们确实会遇到使调查和数字取证人员的生活变得不那么简单甚至有时会感到有压力的情况。希望隐藏信息、掩盖行踪甚至那些恶意意图或实际参与网络犯罪的人经常采用各种方法来试图挫败数字取证人员的尝试,希望阻碍或停止调查。

在最近的一段时间内,我们看到了在线数字入侵事件,特别是从 2011 年开始。其中许多攻击据称来自或声称是臭名昭著的黑客组织,如 LulzSec、Anonymous、Lizard Squad 等,还有许多其他人,包括个人和网络活动人士(为特定原因或目的而进行黑客攻击并且不太关心在监狱中度过的时间)。其中一些黑客攻击不仅使几家主要网络和机构瘫痪,还直接和间接造成了数百万美元的损失;结果,公众对这些公司的信心丧失,进一步增加了损失。

这些大胆、有创意和公开的攻击导致了许多其他新团体的出现,他们从 Anonymous 和其他人过去的失误中吸取了教训。社交媒体和地下通信渠道很快成为志同道合的黑客和网络活动人士之间最简单的沟通形式。随着互联网和万维网变得更容易访问,这也导致了不仅是 IP 之间的竞争,还有私营公司和企业之间的竞争,这导致了几乎每条街上都有免费无线热点的出现,无论是小型还是大型企业。

在几乎每家咖啡店都有互联网接入的情况下,任何人都可以使用智能手机、平板电脑、笔记本电脑或其他设备几乎无需认证地访问互联网。这使他们可以访问黑客网站和门户,以及下载工具、上传恶意软件、发送感染的电子邮件,甚至进行攻击。

加密

在这种情况下,还有更多用户友好的工具可用于帮助掩盖公开可识别信息PII),或者任何可能在取证调查中揭示涉及网络犯罪嫌疑人的信息。用于数据加密和匿名性的工具,例如 IP 地址的掩盖,对任何人都是随时可用的,其中大部分是越来越用户友好的。

还应该注意,许多 Wi-Fi 热点本身可能非常危险,因为这些可以很容易地设置为拦截个人数据,例如登录和密码信息以及 PII(例如社会安全号码、出生日期信息和电话号码)从任何连接到 Wi-Fi 并输入此类信息的用户那里。

加密的过程提供了通信各方之间的保密性,并且在很大程度上使用技术的方式与我们使用锁和钥匙来保护我们的个人和私人物品的方式非常相似。要打开一个锁,必须有一个特定的匹配钥匙。同样,在数字世界中,数据被加密或锁定使用加密算法,并且必须使用相同的密钥来解密或解锁数据。还存在另一种情况,一个密钥可以用来加密或锁定数据,另一个密钥用来解密数据。两个非常流行的加密工具是 TrueCrypt 和 VeraCrypt。

这两个加密工具使用非常高的加密方法来保持数据的保密性。取证的主要障碍可能是获取解密密钥以解密或解锁对数据的访问。

TrueCrypt 和 VeraCrypt 不仅加密文件,还加密文件夹、分区和整个驱动器!

在线和离线匿名性

特别是加密可能使调查变得非常困难,但还有匿名性的概念,这增加了在调查中保持真实来源准确性的复杂性。与加密一样,存在着几个免费和开源的工具,适用于所有操作系统平台,如 Windows、Mac、Linux 和 Android,试图并且通常成功地掩盖某人的数字足迹。这个数字足迹通常通过 IP 地址和MAC媒体访问控制)地址来识别设备。不涉及网络方面的事情,这两个数字地址可以与一个人的全名和家庭地址相比较。

尽管一个人的 IP 地址可以根据他们的私人网络(家庭和工作)和公共网络(互联网)访问而改变,但 MAC 地址保持不变。然而,也有各种工具可以自由地伪造或伪造一个人的 IP 和 MAC 地址,以实现隐私和匿名的目的。除此之外,用户可以使用在线服务器和设备的数据路由系统,使得追踪发送数据的源变得非常困难。这个系统被称为代理链,确实隐藏了一些用户的身份。

一个很好的例子是 Tor 浏览器;它使用洋葱路由和全球几个代理来将数据从一个代理传递到另一个代理,使得追踪源变得非常困难,但并非不可能。您可以将代理链想象成接力赛,但是不是有四个人,一个人将接力棒传递给下一个,而是数据在全球数百个代理设备之间传递。

总结

恭喜!你已经到达第一章的结尾。在我们进入第二章之前,让我们回顾一下刚才讨论的内容。

我们看到数字取证仍然是一个相对较新的领域,尽管法庭科学已经存在了很长时间,早在 20 世纪初就有了。虽然数字取证可能只是在 21 世纪初才出现在舞台上,作为一门科学,我们有一些最佳实践、程序和标准,比如由 ACPO 和 SWGDE 制定的标准。这些标准在进行调查时保持了准确性和证据的完整性,无论是作为业余还是专业的数字取证调查员。

提到的一些商业工具包括 EnCase、FTK 和 Magnet Forensics。许多开源工具适用于基于 Linux 的发行版,可以单独下载,但许多工具也可以在特定的取证和安全操作系统或发行版中轻松获得。其中一些发行版包括 DEFT Linux、CAINE,当然还有 Kali Linux;所有这些都可以在提供的链接中免费下载。

希望这个数字取证的介绍对你有启发和乐趣。现在我们已经建立了取证的基础,让我们深入了解 Kali Linux,学习如何在第二章中下载、安装和更新 Kali。我们下一页见。

第二章:安装 Kali Linux

我们到这里了。让我们开始安装 Kali Linux。我们的一些读者可能已经熟悉安装过程,甚至可能熟悉一些高级功能,如分区和网络设置。对于初学者和新手,我们鼓励您特别关注本章,因为我们将从下载 Kali Linux 的绝对基础开始,逐步进行成功安装。

本章我们将要涵盖的主题是:

  • 软件版本

  • 下载 Kali Linux

  • 安装 Kali Linux

  • 在 VirtualBox 中安装 Kali Linux

软件版本

Kali 已经存在了相当长的时间。之前被称为 BackTrack,从版本一到五,Kali Linux 首次出现在 2015 年,并作为 Kali 1.0 发布。从 2016 年起,Kali 的命名则根据年份。例如,在撰写本书时,使用的版本是 2017 年 9 月发布的 Kali 2017.2。

对于那些运行较旧版本的 Kali,或者在以后购买本书时可能会有新版本的 Kali Linux 可用的读者,您可以通过使用sudo apt-get update distro命令轻松更新 Kali Linux 的实例,本章末尾有演示。

下载 Kali Linux

出于安全和安全原因,最好总是直接从其创建者Offensive Security的网站上下载 Kali Linux。这样做的主要原因是其他页面上的 Kali 下载可能是假的,或者更糟糕的是,可能被感染了木马、rootkit 甚至勒索软件等恶意软件。Offensive Security 还在其网站上包含了所有 Kali 下载版本的哈希值,允许用户将其下载的 Kali 版本的哈希值与 Offensive Security 在其网站上生成和发布的哈希值进行比较(www.kali.org)。一旦进入网站,您可以单击下载链接,或者直接访问 Kali Linux 下载页面,网址为www.kali.org/downloads/

在下载页面上,我们可以看到有六个 Kali 可用的下载版本,每个版本都有特定的类别信息:

  • 镜像名称:指定下载的名称以及操作系统是 32 位还是 64 位。

32 位操作系统仅限于使用 4GB RAM。如果您的系统 RAM 超过 4GB,您可能希望下载 Kali Linux 的 64 位版本。

  • 下载ISO(国际标准组织的缩写)通过用户的浏览器直接下载。Torrent 需要安装特殊软件才能下载。

ISO 文件(或常称为 ISO 镜像)是在复制数据时使用的精确副本。

  • 大小:以 GB 为单位的文件大小。

  • 版本:Kali Linux 的版本。

  • *sha256sum*:Linux 中用于生成现有数据的校验和或数字输出的命令,然后可以用来与下载副本的校验和进行比较,以确保没有数据或位被更改或篡改:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

对于本书,我们将使用 Kali 64 位版本,以 ISO 镜像的形式下载,如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装 Kali Linux

如 第一章 中所述,数字取证简介,Kali Linux 可以用作现场响应操作系统,也可以作为完整操作系统安装和运行。下载 Kali Linux 后,ISO 镜像可以使用任何 ISO 文件刻录工具(如 ImgBurn)刻录到 DVD 上。然后可以将 DVD 用作现场操作系统,也可以用于将 Kali 安装到硬盘上。用户还可以使用 UNetbootin 等工具将 Kali Linux 安装到可移动存储介质上,包括闪存驱动器、SD 卡或外部硬盘驱动器,具体取决于用户的偏好。

为了配合本书的使用,我建议您首先将 Kali Linux 刻录到 DVD,然后安装 Kali 到新的硬盘上,从而满足取证准备的概念。在这种情况下,取证准备是指硬盘是全新的和未触及的,因此在任何方面都没有受损,以维护调查人员和调查的完整性。

对于那些没有可用资源在全新硬盘上安装 Kali Linux 的人来说,还有在虚拟环境中安装 Kali Linux 的选项。用户可以使用虚拟化技术,如 VMware 和 VirtualBox,在宿主机中运行 Kali Linux 操作系统作为客户机。

在 VirtualBox 中安装 Kali Linux

VirtualBox 可以在许多平台上运行,包括 Windows、macOS、Linux 和 Solaris。在本节中,我们将VirtualBox 5.1.28安装到我们的宿主机,并从那里开始。

VirtualBox 可以在www.virtualbox.org/wiki/Downloads找到:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

准备 Kali Linux 虚拟机

一旦 VirtualBox 被下载,它可以被安装,然后配置以运行 Kali Linux 和许多其他操作系统,取决于可用的 RAM 数量。

在设置新的客户操作系统或客户虚拟机时,我们首先点击新建,然后填写以下细节:

  • 名称Kali-Forensic(或您选择的名称)

  • 类型:Linux

  • 版本:Debian(64 位)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后点击下一步,继续在内存大小提示中分配 RAM:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在上述内存大小截图中,我们可以看到屏幕右侧的最大 RAM 容量。我使用的机器有 16,384 MB(四舍五入为 16 GB)的 RAM。虽然 Kali 的推荐内存大小只有 1024 MB(1 GB),但我建议至少为使用取证工具时的平稳功能分配 4 GB 的 RAM。我已经为我的虚拟机分配了 8,192 MB 的 RAM。

接下来,通过添加虚拟硬盘来创建虚拟机。我建议从新的虚拟硬盘开始,这是选择中的第二个选项。点击创建以继续,然后选择 VDI(VirtualBox 磁盘映像)作为硬盘文件类型:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

选择 VDI,然后点击下一步:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦选择了 VDI,选择动态分配选项以允许虚拟硬盘在需要时扩展:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

接下来,我们选择文件位置和所选虚拟硬盘的大小。Kali Linux VDI 的推荐大小为 8 GB,但我分配了 64 GB,以备不时之需存储文件和镜像驱动器的副本。

完成后,点击创建以完成虚拟硬盘的创建:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在虚拟机上安装 Kali Linux

一旦虚拟硬盘已经准备好并且按照上一节的步骤完成,我们就可以开始实际的 Kali Linux 安装过程。在 Oracle VM VirtualBox Manager 中,这是 VirtualBox 的主操作系统管理窗口,我们可以看到为我们的 Kali Linux 安装准备的虚拟机现在可用。

在屏幕中间,我们还可以看到分配的资源,如通用部分中的名称和操作系统类型,以及系统部分中分配的 RAM 数量。其他设置,如VRAMVideo RAM的缩写)、网络和显示设置也可以在此部分中访问。

要开始安装 Kali Linux,点击左侧的 Kali-Forensic 条目,然后点击绿色的启动箭头:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在下一步中,我们必须找到我们从 Offensive Security 网站下载的 Kali Linux ISO 映像。单击“主机驱动器’D:'”旁边的文件夹图标,并搜索下载的 Kali Linux ISO 映像:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

选择 ISO 映像后,您会注意到所选条目更改为 kali-linux-2017.2-amd64.iso(2.81 GB)。单击“开始”开始启动过程:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

单击“开始”后,启动菜单显示了各种可用选项,包括 Kali 的实时版本。在这个演示中,我们将选择“图形安装”选项将 Kali 安装到虚拟硬盘:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

值得一提的是,我还应该提醒您关注“实时(取证模式)”选项,当从 DVD、闪存驱动器或其他可移动存储介质引导时,这个选项将对我们可用。在可能需要实时响应的情况下,始终保留 Kali Linux 的副本是个好主意。

好的,回到我们的安装。在启动菜单中点击“图形安装”选项后,我们将被提示选择语言、位置和键盘布局。

在下一步中,我们为 Kali Linux 客户端指定主机名,这与 Windows 环境中的用户名相同:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

对于域名区域,我将其留空,因为我不会将此主机加入域。

设置密码时,请确保使用您能记住的密码。如果您在启动时记不住密码,使用一个由大写字母、小写字母和数字字符组成的复杂密码,长度为 16 个字符,是没有意义的:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

分区磁盘

硬盘(无论是虚拟还是物理)的分区涉及将驱动器分割成逻辑驱动器。可以将其视为一个由一个大房间组成的大公寓。现在想象一下,您设置了一堵墙,将公寓分成两半。它仍然是一个物理上的公寓,但现在分成了两个房间。一个可以用作主公寓,另一个可以用作存储,或者您甚至可以有两个较小的公寓与自己和朋友共享。同样,分区可以允许在硬盘上安装多个操作系统,甚至创建额外的卷用作存储空间。

继续我们的 Kali Linux 安装,下一步提供了有关虚拟磁盘分区使用的选项。由于这是一个虚拟磁盘,我建议使用引导-使用整个磁盘分区方法。这种方法非常简单,使用在前面步骤中分配给虚拟磁盘的所有可用空间。首先,让我们选择推荐的分区方法:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

上面的截图中的其他选项为用户提供了设置 LVM(逻辑卷管理器)和加密 LVM 的选项。LVM 管理逻辑分区,可以创建、调整大小和删除 Linux 分区。

提示警告说,如果选择此选项,磁盘上的所有数据(如果有的话)将被删除;但是,这是一个没有现有数据的新虚拟磁盘,所以我们可以继续安装。

在选择 VirtualBox 磁盘后,确保选择一个分区中的所有文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

随着我们继续分区过程,我推荐“引导分区”选项的主要原因之一是因为它几乎为我们做了所有事情。从这里开始,我们只需选择最后一个可用选项,即“完成分区并将更改写入磁盘”,然后单击“继续”:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

分区过程的最后一步要求确认将指定的配置和更改写入磁盘。在单击“继续”之前,请务必选择“是”:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们现在离安装和运行 Kali Linux 虚拟机只有几步之遥。

安装完成后,软件包管理器提示选择网络镜像,这允许我们访问软件的更新版本。我建议通过单击“否”跳过此步骤,因为一旦我们运行起来,我们很快就会手动安装 Kali 的更新。

安装过程中的最后一步是在硬盘上安装 GRUB 引导加载程序。不详细介绍,GRUB(GRand Unified Bootloader)允许在启动屏幕上安全地拥有和选择操作系统,从而实现多重引导环境,保留每个已安装操作系统的引导条目。

尽管我们可以选择不安装 GRUB(因为我们的虚拟硬盘上只安装了一个操作系统),但是如果要与其他操作系统进行双重或多重引导,则应选择“是”选项:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果选择是安装 GRUB,请确保选择可引导设备:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

单击“继续”后,安装完成并启动 Kali Linux。

探索 Kali Linux

安装完成后,我们可以启动 Kali Linux。要登录,请输入root作为用户名和之前配置的密码:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

登录后,我们应该在终端中输入三个命令来更新 Kali。

要进入终端(相当于 Windows 中的命令提示符),请单击应用程序|终端。

打开终端后,输入以下命令,以便 Kali 可以检查软件包更新、软件升级和发行版更新:

  • apt-get update

  • apt-get upgrade

  • apt-get dist-update

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

此时,我们已经成功更新了 Kali Linux 的安装。由于本书涉及 Kali Linux 中的数字取证,我们可以通过查看菜单上可用的取证工具来立即开始。

在 Kali Linux 中有两种方法可以进入取证菜单:

  • 第一种方法是单击“应用程序”,然后移动到菜单项 11 - 取证,如下面的屏幕截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 对于第二种方法,只需单击“显示应用程序”项目(浮动侧边菜单中的最后一个图标),然后选择取证:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

您会注意到在第二个选项中有更多的工具可用。这并不是说这些是 Kali Linux 中所有可用的取证工具。许多工具可以通过终端访问,其中一些将在后面的章节中以这种方式访问。

我还鼓励您探索 Kali Linux 及其许多出色的功能,这也使其成为一个完全功能的操作系统,不仅用于取证和渗透测试。

如果您对 Kali 作为渗透测试(pen-testing)发行版感兴趣,Packt有许多关于 Kali Linux 的详细书籍,我全力推荐。我拥有其中许多平装书,并且在工作中经常使用它们,也用于准备我的讲座。

总结

在本章中,我们深入探讨了 Kali Linux 的技术方面,并发现了通过 Kali Linux ISO 映像可用的各种模式,无论是从光盘实时运行还是在虚拟环境中安装。除了作为从 DVD 的实时响应取证工具外,Kali 还可以安装到可移动存储介质,如闪存驱动器或 SD 卡上。作为一种多功能操作系统,我们还可以将 Kali 安装为一个完整的操作系统。

我们还深入研究了在虚拟环境中使用 VirtualBox 安装 Kali Linux。对于初学者,我绝对推荐这种安装方法,因为它允许在隔离的环境中进行试错。请确保分配足够的 RAM,并且记住,Kali 的 32 位版本只允许识别和利用高达 4GB 的 RAM。作为提醒,我再次建议您同时拥有 Kali Linux 的 Live DVD 和 OS 的安装版本,无论是物理还是虚拟的,以确保所有情况都覆盖到。

在 Kali 中使用的取证工具是进行调查的绝佳方式,但我们还需要了解存储介质、文件系统、数据类型和位置的工作原理。在下一章中,加入我,我们将首先了解这些基本概念,继续我们的数字取证之旅。在第三章中见。

第三章:了解文件系统和存储介质

成为数字取证调查员需要的不仅仅是技术知识。案件本身还需要大量的研究、流程和分析。想象一下,你需要建造一座房子。当然,我们需要木材、钉子、水泥、金属、玻璃和所有其他原材料,我们还需要熟练的劳工和承包商来建造结构并将其组装在一起。除了材料、工具和资源之外,我们还需要进行研究,以确保我们了解这个项目成功所需的一切。

例如,我们必须获得建筑许可证,进行土壤分析,考虑天气,然后根据天气、位置、土壤类型等选择材料。毫无疑问,必须对该领域的基本概念有所了解,才能有效地完成任务。同样,我们需要了解文件系统、操作系统、数据类型和位置,以及保留数据、存储介质和一般证据的方法和程序。

在本章中,我们将学习以下主题:

  • 存储介质的历史

  • 文件系统和操作系统

  • 数据呢?

  • 数据的易失性

  • 页面文件及其在数字取证中的重要性

存储介质

任何调查的最终结果都是证明某事是否存在或发生过。在笔记本电脑、台式机、移动设备和智能设备中,数据必须存储在某个地方,即使只是暂时的。我们大多数人可能熟悉笔记本电脑、台式机、移动设备等中的硬盘驱动器,但我们也需要关注可移动和便携式存储设备。这些包括 DVD、便携式驱动器、拇指或闪存驱动器、SD 和 microSD 卡,以及旧的介质,如 CD 和软盘等等。

我们还应该考虑,许多便携式闪存驱动器以新奇的形状和大小作为特色商品出现,可能不像普通的矩形驱动器那样。另一个需要考虑的问题是,这些存储介质设备多年来尺寸发生了变化,可能变得更小,通常是由于技术的进步。

IBM 和存储介质的历史

在没有提到三个字母IBM的情况下,关于硬盘驱动器和存储介质的历史,就不可能有任何故事、日志、书籍,甚至讨论。我们都熟悉这个著名的科技巨头,但我们可能并不熟悉它的一些伟大成就。

国际商用机器公司,或者我们所知道的IBM,已经存在了相当长的时间。在 20 世纪初被称为计算-制表-记录公司(或CTR),IBM 更为人所知的是建造了第一台硬盘驱动器、第一台个人电脑、其服务器、台式机和笔记本电脑。

在 1956 年和 1957 年之间,IBM 在 305 RAMAC(随机存取会计和控制方法的缩写)的开发和发布方面取得了重大进展,该设备采用了第一代磁盘存储技术。这项革命性的技术重达约一吨,大约有 16 平方英尺大小。然而,这个庞然大物的磁盘容量只有 5 MB(兆字节 - 是的,我说的是兆字节)。

尽管按照今天的标准,5 MB 大约是使用移动设备拍摄的高清照片的大小,但总的来说,这确实是当时一个巨大的成就。在 IBM 的发明之前,数据是存储在可以达到数百万张卡的打孔卡上,只能容纳几兆字节的数据。

当时引入这种数字存储的一个主要问题是设备的大小。对于许多人来说,飞机和卡车运输可能不是一个选择;存储这些设备的空间也可能是一个问题。

随着技术的进步,IBM 在 1975 年宣布了一款更加便携的计算机,名为 IBM 5100 便携式计算机。在 1980 年代,特别是 1981 年,我们看到了 IBM 个人电脑的诞生。这款便携式计算机比前任轻得多,价格也更加实惠,介于 8000 至 20000 美元之间。

直到 1981 年 IBM 发布了第一台个人电脑,计算机的便携性才真正成为现实。售价为 1565 美元,用户可以获得键盘和鼠标,并可选择监视器、打印机和软盘驱动器。除了软盘驱动器,这是今天个人电脑的标准。

随着这种更新和更加便携的技术,多年来数据存储介质也有所改进,从磁带存储到软盘和磁盘、CD、DVD、蓝光光盘,当然还有机械和固态驱动器。

可移动存储介质

继续我们关于存储介质的话题,我首先想要讨论可移动存储介质,因为它们在当今世界的作用和固定存储介质一样重要。

磁带驱动器

IBM 在 1950 年代推出了磁带,这是一种简单而非常快速的存储数据的方式,速度与其处理时间相等。IBM 726 磁带读写器是第一批提供这种存储的设备之一,带密度为每英寸 100 位。 英寸的磁带应该可以说明磁带的大小,它缠绕在一个大轮子上,类似于旧的电影胶卷。

使用磁带存储介质,数据是在由间隔块分隔的帧中横跨磁涂层塑料带的宽度上写入的。磁带存储介质今天仍然被广泛使用,并且像许多其他存储介质类型一样,在尺寸上显著减小,容量和速度增加。

举个例子,截至 2017 年,IBM 已经开发出了新的磁带存储介质,每英寸带密度为 200 Gbps,单个磁带可以记录高达 333 GB 的数据。这些磁带(对于像我这样的老年人来说)的大小与盒式磁带相当,或者(对于年轻人来说)几乎和普通智能手机一样大,可以放在手中。

软盘

软盘再次由 IBM 推出,首次与软盘驱动器一同出现在 1971 年。尽管当时的大型计算机已经有硬盘驱动器和磁带存储介质,但是需要一种简单和更便宜的方式来保存和传递软件和指令给大型计算机,之前是使用速度慢得多的穿孔卡完成的。

软盘的核心是一个小磁盘,尽管当时比磁带存储和硬盘驱动器更便携,但存储容量远低于我们提到的其他介质。

软盘的演变

尺寸:8 英寸

推出年份:1971 年

最大容量:80 KB(千字节)

尺寸:5.25 英寸

推出年份:1976 年

最大容量:360 KB

尺寸:3.5 英寸

推出年份:1984 年

最大容量:1.2 MB(兆字节)

1986 年,软盘的容量增加到了 1.44 MB,一直保持到索尼(最后一家生产软盘的制造商)在 2011 年停产。

光学存储介质

光学存储介质之所以被这样称呼,是因为数据是通过使用不同类型的激光在磁盘表面上写入的。

尽管在没有默认标签的情况下可能有些难以区分各种光盘,但它们在颜色和色调上有些微的差异,这是由于用于将数据写入其中的激光的大小不同。

光盘

紧凑盘(或 CD)由坑和地形制成,作为盘的底部凸起,涂有一层薄铝,形成反射表面。数据被写入同心圆中,进一步分成每个 512 字节的扇区,每个扇区在盘的内部到外部(或边缘)被称为 CD 上的轨道:

  • 直径:120 毫米

  • 用于写入数据的激光类型:780 纳米(红外)激光

  • CD 的最大容量:650-700 MB

各种类型的 CD:

  • 紧凑盘-只读存储器(CD-ROM):这种盘上有程序、游戏、音乐等数据,只能读取

  • 可记录紧凑盘(CD-R):数据可以写入这个盘,但只能写入一次

  • 紧凑盘-可重写(CD-RW):数据可以多次写入这个盘

数字多功能光盘

数字多功能光盘(或 DVD),尽管直径相同,但可以存储比 CD 更多的数据:

  • 直径:120 毫米(与 CD 相同)

  • 用于写入数据的激光类型:650 纳米(红激光)

  • DVD 的最大容量:4.7 GB(千兆字节)和 15.9 GB(双层 DVD)

各种类型的 DVD:

  • 数字多功能光盘-只读存储器(DVD-ROM):DVD 上已经写入数据,就像 CD-ROM 一样。

  • 数字多功能光盘-可记录(DVD-R):数据可以写入一次到 DVD。

  • 数字多功能光盘+可记录(DVD+R):数据可以写入一次到 DVD。+R DVD 利用更先进的错误检测和管理技术。

  • 数字多功能光盘-可重写(DVD-RW):数据可以多次写入 DVD。

  • 数字多功能光盘-可记录双层(DVD-R DL):DVD 包含双层,导致存储容量更高,DVD-9 盘上为 7.95 GB,DVD-18 盘上为 15.9 GB。

  • 数字多功能光盘-可记录双层(DVD+R DL):与 DVD-R DL 相同,但被认为是更有效的格式,减少错误。

  • 数字多功能光盘-随机存取存储器(DVD-RAM):主要用于视频录制设备,因为它的弹性(可持续长达两十年)和重写数据的能力。这种盘比其他 DVD 格式更昂贵,也不兼容许多常见的 DVD 驱动器和播放器。

蓝光盘

可移动磁盘媒体的当前标准,蓝光盘得名于用于读取和写入盘的激光的颜色。由于蓝光盘的高容量存储,高清晰度(HD)内容可以轻松存储在蓝光盘上而不会失去质量:

  • 直径:120 毫米(与 CD 和 DVD 相同)

  • 用于写入数据的激光类型:405 纳米(蓝光)激光

  • DVD 的最大容量:27 GB(千兆字节)和 50 GB(双层蓝光)

闪存存储介质

闪存存储器之所以被称为闪存,是因为数据是通过电荷写入和擦除的。你可能听说过有人说他们不得不“刷”他们的移动设备。这与在智能手机和智能设备上擦除闪存存储介质类似,只是像 Android 和 iOS 等操作系统的设备需要更复杂的程序来刷写和重新安装它们的操作系统。然而,最终结果是非常相似的,即内存和存储区域被重置或擦除。

闪存芯片有两种类型,称为 NAND 和 NOR 闪存,负责在闪存媒体上高速和高容量地存储数据。它们是较新的EEPROM芯片(电可擦可编程只读存储器的缩写),而不是像较慢的 EEPROM 一样一次只擦除一个字节,而是可以擦除数据块或整个驱动器。这种闪存芯片是非易失性的,意味着即使芯片断电,数据仍然存储在芯片上。当通过一种称为电路写入的方法以电信号的形式发送特定指令到芯片时,数据会相应地被擦除。

以下图片显示了我旧的 1GB 闪存驱动器,上面有一个三星 NAND 芯片,用来存储数据。如果你想深入了解芯片的技术细节,可以查看这个芯片的数据表 PDF:datasheet.iiic.cc/datasheets-1/samsung_semiconductor_division/K9K4G08U0M-PCB00.pdf

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

闪存媒体存储到目前为止已经成为便携性的终极选择,有许多类型,从拇指大小到小指甲盖大小。闪存存储的寿命取决于使用情况,因为它们都有平均读写使用率,有时会显示在设备的包装上。读写速度也是目前一些最快的,这就是为什么硬盘驱动器已经从传统的机械盘机制转向了固态盘机制。本章后面将进一步讨论固态硬盘。

从 2GB 到 256GB 的闪存媒体容量,特别是 SD、microSD 和闪存驱动器,现在可以作为非常快速的可移动驱动器,上面可以安装操作系统,甚至可以使用各种工具进行分区。没错,Kali Linux 绝对可以安装到闪存驱动器、SD 卡或 microSD 卡上(并且可以制作成可启动的),只需 8GB 的存储空间。

USB 闪存驱动器

通用串行总线USB)端口或接口于 1995 年发布,已成为所有设备的标准,取代了旧设备,这些设备本来会连接到计算机上的特定并行端口。几乎可以看到几乎任何设备或外围设备都通过 USB 连接到计算机,包括鼠标、键盘、闪存驱动器、打印机、扫描仪、相机、移动设备以及几乎所有其他设备。

USB 端口的演变:

USB 版本发布年份数据传输速度
USB 1.0 和 1.1199512 Mbps
USB 2.02000480 Mbps
USB 3.020085 GBps
USB 3.1201310 GBps

USB 闪存驱动器如今有各种各样的形状和大小,从标准的矩形形状到各种想象得到的形状。USB 闪存驱动器使用 NAND EEPROM 芯片来存储数据,如今有各种版本可定义闪存驱动器的读/写速度。

以下图片显示了各种闪存驱动器,从最旧到最新,从左到右。前三个驱动器都是 USB 2.1;然而,前两个是 8GB 的闪存驱动器,第三个则明显较小,是 32GB 的闪存驱动器。第四个驱动器(海盗船)是一个 64GB 的 USB 3.1 驱动器:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我应该特别提到这里的大象在房间里,即新颖的闪存驱动器,它可以轻松地当作钥匙链或玩具,实际上可能对不允许员工携带闪存驱动器上班或离开的组织构成威胁,因为组织内的数据具有敏感性。

闪存卡

与闪存驱动器一样,闪存存储卡(或者称为存储卡)也使用 NAND 闪存存储器,正如我们之前了解的那样,这是一种非易失性固态存储器。然而,与 USB 闪存驱动器不同,这些卡不带有 USB 接口,必须使用适配器或存储卡读卡器。

多年甚至几十年来,我们的台式机,笔记本电脑,手机和其他设备,包括相机,MP3 播放器甚至玩具,都使用了几种格式的存储卡。尽管我只会介绍一些当今更流行的卡,但重要的是你至少要熟悉存储卡,并且能够识别它们。

闪存存储卡类型:

  • Memory Stick PRO DuoMSPD,索尼开发的专有卡)

  • Secure DigitalSD

  • MicroSD

  • 紧凑闪存CF

  • MultiMediaCardMMC

  • xD-PicturexD

  • Smart MediaSM

在上述中,我选择在下面的图片中展示我的收藏中的三个。左边的卡是索尼 Memory Stick PRO Duo。中间的卡是一个带有侧滑锁的 SD 卡,用于防止数据被覆盖。右边的卡是今天更常见的 microSD 卡:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我想简要比较一下 PRO Duo(左边的卡),SD(中间的卡)和 microSD 卡(右边的卡)。PRO Duo 卡至少有十年的历史,更老,容量为 2GB。尽管 SD 卡上看不到,它的容量是 4GB,而右边最小最新的 microSD 卡实际上有 64GB 的存储容量。

看一下下面的图片,可以近距离看到 microSD 卡。它显示了 64GB 的容量,以及 microSD 卡的等级(Class 10)。64GB 的数据放在指甲盖大小的东西上!不过,microSD 卡正在开发更大容量的 128GB 甚至 256GB:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

各种等级的 microSD 卡标识了它们的读/写速度和建议用途。如果购买的话,我建议购买 Class 10 的 microSD 卡,因为 C10 比其他等级(2、4 和 6)要快得多,并支持持续的高清和甚至 4k 视频录制。

如前所述,闪存存储卡需要读卡器,它们通过 USB 端口连接到笔记本电脑,台式机和其他媒体播放器。下面的图片显示了我的许多读卡器之一,它支持紧凑闪存,Memory Stick PRO Duo,Secure Digital,甚至 Smart Media 卡:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

硬盘驱动器

现在我们已经对包括磁带存储和闪存存储在内的非易失性存储有了很好的了解,让我们深入一点了解硬盘驱动器的世界,它们作为固定存储介质。我将尝试通过主要关注取证调查人员特别需要的知识来保持简单和简短。

硬盘驱动器技术肯定已经走过了一段很长的路,从最初在 IBM 大型机上看到的庞大存储设备,现在更加紧凑,更快,更实惠,容量达到了几 TB。

尽管新型固态驱动器使用与闪存存储设备相同类型的存储器,但与机械驱动器相比,它们仍然有点昂贵。这也许是老式机械驱动器技术仍在使用的原因之一。机械驱动器由包括盘片,臂和非常强大的磁铁在内的运动部件组成。尽管在今天的笔记本电脑和硬盘驱动器中仍然很常见,但它们比新型的固态驱动器慢得多,后者没有运动部件,看起来非常类似于 USB 闪存驱动器的芯片组。

在您的取证调查和冒险中,您可能会遇到或被呈现出使用不同接口和不同电缆技术连接到主板的旧 HDD。我们来看一看,好吗?

IDE HDDs

在 20 世纪 80 年代中期,许多最早的个人电脑配备了使用PATA并行高级技术附件的缩写)和IDE集成驱动电子学的缩写)技术的硬盘。与当时的所有旧设备一样,采用了并行传输,导致吞吐量非常有限。识别旧 IDE 驱动器的简单方法是查看数据和电源电缆连接到驱动器的接口。

如下图所示,这些旧驱动器有四个用于电源的引脚,连接到一个 Molex 连接器,另外有八个用于将设备设置为主设备或从设备的引脚,然后是 40 个用于 IDE 数据电缆的引脚,用于将数据传输到主板:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

1994 年,技术的进步导致了EIDE增强集成驱动电子学的缩写)的发布,从 40 个引脚的数据电缆增加到 80 个引脚,同时将传输速度从 4 Mbps 提高到可能的 133 Mbps。

然而,IDE/EIDE 仍然限制每台计算机最多四个 IDE/EIDE 驱动器,因为驱动器上的跳线引脚只允许两个主要驱动器和两个次要驱动器,设置为主设备和从设备。还必须考虑到 CD-ROM 和 RW 设备以及 DVD-ROM 和 RW 设备当时也在使用 IDE/EIDE 技术。

SATA HDDs

2002 年,希捷发布了一种 HDD 技术,称为SATA串行高级技术附件的缩写),它使用串行传输而不是较慢的并行传输。而 PATA 驱动器的速度为 33/66/133 Mbps,SATA 驱动器的速度为 150/300/600 Mbps。这意味着最低的 SATA 传输速度 150 Mbps 比最高的 PATA 速度 133 Mbps 要快。

SATA 驱动器的连接接口也不同,但当时常见的是 SATA 驱动器同时具有 SATA 和 PATA 电源电缆的连接器,以实现向后兼容性。

SATA 数据电缆比 PATA 电缆要薄得多,因为它们只包含连接到七个引脚的七根导线。每个 SATA 设备使用一个电缆,而 PATA 设备连接在一个 IDE/EIDE 电缆上的两个驱动器以主/从配置连接。

以下图片显示了一个带有 SATA 数据和电源连接器的旧 SATA 驱动器,连接在右侧,以及一个传统的 IDE Molex 电源电缆(四个引脚)连接在左侧:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SATA 仍然是今天台式机和笔记本电脑驱动技术的标准,并且已经进行了几次修订,如下所列。列出的速度以 MBps 而不是 Mbps 为单位:

  • SATA 1:150 MBps

  • SATA 2:300 MBps

  • SATA 3:600 MBps

以下图片显示了两个 SATA 笔记本电脑 2.5 英寸驱动器。左侧的那个已经损坏,已经打开让我们看到中间的圆盘和顶部略微位置在圆盘上方的臂。在臂的末端是一个读/写头,实际上进行数据的读写。

图片中右侧的驱动器实际上是一个混合驱动器,或者SSHD固态混合硬盘的缩写)。这实际上是一个像左侧那样的机械驱动器,但也在其中具有闪存内存,以便更快地访问盘片上的数据:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

固态硬盘

如前所述,SSD 是非易失性存储介质,并使用 NAND 闪存内存阵列来存储数据。SSD 已经存在了相当长的时间;然而,由于驱动器的高成本,主流使用可能会受到很大阻碍。三星于 1996 年首次发布了一款带有 PATA 接口的 32GB SSD,随后是 SanDisk 的 32GB SSD,但采用 SATA 接口。

尽管 SSD 驱动器使用闪存内存,但所使用的材料比闪存驱动器中的材料更高端,这使得它非常适合用作硬盘,但同时也导致了非常高的成本。

SSD 的一些优势来自于 SSD 中没有移动部件这一事实。没有移动部件使得 SSD 在摔落或者快速踢到 PC 塔的情况下更加耐用,因为没有盘片或者臂部来被刮擦或者撞击。此外,更快的读/写速度和访问时间大大减少了设备启动或者启动所需的时间,甚至在使用资源密集型软件和游戏时提供了更好的体验。

就数字取证而言,SSD 仍然是一种相对较新的技术,将在未来一段时间内不断改进。重要的是要记住,你正在处理的不是机械驱动器,并且要记住,SSD 上的数据,就像闪存驱动器或存储卡上的数据一样,可能在几分钟甚至几秒钟内丢失或擦除。尽管传统工具可以用于从 SSD 中提取和恢复数据,但我强烈建议在进行任何取证活动之前研究任何 SSD 驱动器,以更好地了解其工作原理和复杂性,如去芯和磨损平衡算法。

文件系统和操作系统

现在我们已经涵盖了物理方面,让我们来谈谈逻辑!任何类型的存储介质都需要使用特定的文件系统进行格式化。所选择的文件系统还将确定可以安装在介质上的操作系统,以及文件和分区的大小。

一个简单的想法是将一张空白纸张想象成任何类型的新的或擦除的存储介质。我们可以在这张纸上放置多种类型的信息,但我们可能首先想要以一种使我们的数据易于理解、访问甚至存储的方式来组织或准备这张纸。我们可以选择在上面写字,从左到右用英语句子和段落,或者我们可以创建表格,使用行和列。我们甚至可以使用打印幻灯片来展示我们的数据,或者甚至使用图像、图表和流程图。此外,我们可以以最适合存储和使用的数据的方式格式化存储介质。

文件系统确保数据以一种易于识别和索引的方式组织。想象一下文件柜内的存储空间,有多个隔间。有些可能专门用于按字母顺序存储文件,其他按时间顺序,有些隔间用于存放文具用品,杂项,甚至随机物品。尽管用于存储不同的物品,它们都可以被标记和轻松识别,并且以一种可以轻松访问或者移除每个隔间内容的方式组织。

要在硬盘或可移动存储介质上安装任何操作系统,设备必须首先通过选择适当的文件系统进行格式化和准备。Windows、macOS、Android、Kali 等都有文件系统,可以组织存储介质,以便成功安装操作系统。

一些更受欢迎的操作系统及其文件系统是:

  • Microsoft Windows

  • 文件系统NTFS(网络技术文件系统)

  • 支持的版本:Windows 10、8、7、Vista、XP、2000、NT

  • 最大卷大小:16 EB(艾字节)

  • 最大支持文件大小:256 TB

  • NTFS 功能:压缩,EFS(加密文件系统),磁盘配额

较早版本的 Microsoft Windows 默认支持FAT文件分配系统)文件系统。较新版本的 Windows 也支持 FAT 和 FAT32,但有驱动器大小限制(8 TB)和文件大小限制(4 GB)。exFAT 是为了消除 FAT32 的限制而创建的,但可能没有 FAT32 那么广泛地得到支持。

  • MacintoshmacOS):

  • 文件系统HFS+分层文件系统

  • 支持的版本:macOS 直到版本 10

  • 最大卷大小:2 TB

  • 最大支持文件大小:2 GB

在撰写本文时,苹果已经升级到了一个称为APFSApple 文件系统)的新文件系统,以取代 HFS+,专门针对 SSD 进行了优化。APFS 将在 macOS 10.12.4 和 iOS 10.3 中提供。

  • Linux

  • 文件系统Ext4(第四扩展文件系统)。Linux 有几种文件系统可用,但如果您不确定应该使用哪种,我建议使用这种。

  • 支持的版本:RedHat、Kali、Ubuntu 等

  • 最大卷大小:1 EB

  • 最大支持文件大小:16 TB

许多开源操作系统发行版都基于 Linux,包括 Kali Linux 和 Android,因此使用 ext2/ext3/ext4 文件系统。它们也能够使用 FAT32 文件系统。

FAT32 可以在任何平台上使用,包括较旧版本的 Windows、Mac 和 Linux,并且几乎任何带有 USB 端口的设备都支持它。

那么数据呢?

到目前为止,在本章中,我们已经看过了用于存储数据的各种介质。现在我想谈谈实际的数据本身,它的一些状态,以及在访问时会发生什么。

数据状态

首先,有运动中的数据,也称为运动中的数据。这只是描述正在移动的数据,可能在设备之间或者在存储介质之间穿行,积极地在不同位置之间移动。

然后是使用中的数据。在这种状态下的数据目前正在被用户访问,或者被 CPU 处理。当数据被访问或使用时,它会从硬盘中提取并临时存储在 RAM 中,这比硬盘(特别是机械硬盘)要快得多,并且只要用户访问它并且设备有电源,数据就会存储在那里。

当数据既不在运动中也不在使用中时,它被描述为静态数据。在这种状态下,数据静止或驻留在非易失性介质上,如硬盘驱动器、光盘、闪存驱动器和存储卡上。

元数据

元数据只是关于数据的数据。以仓库中存储的笔记本电脑为例。在仓库中的某个地方(可能还在其他地方,如云中),可能有关于笔记本电脑的几个信息片段,可以称为关于笔记本电脑的数据,甚至是笔记本电脑的元数据,例如:

  • 笔记本电脑在仓库内的位置

  • 笔记本电脑品牌和型号

  • 制造日期

  • 保修日期和信息

  • 硬件和软件规格

  • 颜色和大小

此外,数据可能至少包含一些基本信息,无论是静止还是运动中。在静止状态下,数据可能被索引在硬盘的文件表中,以确定数据的位置以及是否可供用户使用,或者正在等待被覆盖。在传输中的数据也会包含头部信息(将在后面的章节中讨论),其中包含有关源地址和目的地址以及数据大小的信息,仅举几例。

松弛空间

簇是存储介质上的最小磁盘空间或分配单元,用于存储数据。在格式化驱动器时,我们需要定义这些分配单元的大小,或者我们可以使用默认的 4 千字节簇大小。这就是松弛空间的作用。

松弛空间是包含数据但未完全填满数据的簇内的空闲未使用空间。要完全理解这一点,我们首先需要了解操作系统指定的默认簇大小。使用 NTFS 格式化的驱动器(用于 Windows)具有默认的簇大小为 4 KB。假设您将一个文件大小为 3 KB 的文本文件保存到磁盘上。这意味着您在该簇内仍有 1 KB 未使用的松弛空间。

松弛空间对于法医调查员来说是特别重要的,因为数据可以很容易地隐藏在松弛空间中。幸运的是,我们有几种可用的工具,例如Sleuth KitAutopsy,在 Kali Linux 中,可以帮助调查松弛空间并找到隐藏的文件。

数据易失性

在本节中,我们将看看为什么在易失性内存断电时会丢失数据。

只要存储数据的介质能够存储数据,数据就可以存在。硬盘驱动器(机械和固态)、闪存驱动器和存储卡都是非易失性存储介质。尽管 SSD 在数据访问时间方面已经取得并持续取得了巨大的改进,但到目前为止,RAM 仍然是更快的内存类型,通常只被称为设备内部的内存

然而,RAM 是易失性内存。与硬盘驱动器和闪存驱动器中的非易失性内存不同,RAM 中存储的数据只在芯片提供电流的时间内暂时保留。我们需要了解的 RAM 有两种类型:静态 RAMSRAM)和动态 RAMDRAM)。

SRAM 优于 DRAM,但由于构建芯片所使用的材料广泛,因此比 DRAM 昂贵得多。SRAM 也比 DRAM 体积大得多。SRAM 可以在 CPU 缓存(L11 级)和主板上的一些芯片(L2/L3)中找到,尽管由于成本和物理尺寸的原因,它们的尺寸非常小(KB)。

尽管 DRAM 速度较慢,但由于成本较低,仍然是设备中主要内存使用的原因之一。RAM 易失性的原因是其组件,如晶体管电容器。您们中的一些人可能已经从诸如**A+**的认证课程中熟悉了这个主题,但为了所有读者的利益,让我更详细地介绍一下。

DRAM 使用电容器,它们在刷新电路的一部分暂时存储电荷。芯片需要不断刷新以保持在访问时的数据。然而,在刷新之间,会创建一个等待状态,这使得 DRAM 比使用晶体管而不是电容器的 SRAM 更慢,后者不会有等待状态。

几十年来,已经有许多类型的 DRAM 或略有不同尺寸和增加的引脚与主板接触的内存条。按年龄顺序排列的一些 RAM 类型是:

  • 扩展数据输出 RAMEDO RAM):早期的 DRAM 类型之一。

  • 同步动态 RAMSDRAM):开始与 CPU 时钟速度同步。最大传输速率为 133 MT/s(每秒传输的百万次)。标记为 PC100、PC133、PC166。

  • DDR-SDRAM/DDR 1(双倍数据传输速率 - SDRAM):有效地将 SD RAM 的传输速率加倍。最大传输速率为 400 MT/s。

  • DDR2:最大传输速率为 800 MT/s。

  • DDR3:比 DDR2 消耗的电力少三分之一。最大传输速率为 1600 MT/s。

  • DDR4:最大传输速率为 3200 MT/s。

在今天的笔记本电脑和台式电脑中,主要可能会遇到 DDR3 和 DDR4,但可能也不罕见遇到具有 DD2 或(奇迹般地)DDR1 的传统机器。以下图片显示了不同类型的 RAMDIMM双列直插内存模块)从上到下,SDRAM(顶部)、DDR1、DDR2,最后是 DDR3:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

笔记本电脑也使用 DDR RAM,但以更紧凑的尺寸称为SODIMM小外形 DIMM)模块。

分页文件及其在数字取证中的重要性

操作系统有能力使用硬盘的一部分作为 RAM 的扩展。这被称为虚拟内存,如果计算机或笔记本电脑的 RAM 有限,这通常是一个好主意。尽管硬盘比 RAM 慢得多,但磁盘上的交换文件或分页文件可以存储访问较少的文件和程序,使 RAM 可用于存储频繁访问的数据。这个过程涉及操作系统交换较少使用的数据页面,并将数据移动到硬盘上专用的分页文件区域。

在法证调查中,分页文件对我们非常重要。虽然不像 RAM 本身那样易失性,因为它存储在硬盘上,但它是 Windows 中的一个隐藏文件,称为pagefile.sys,应该始终使用您选择的工具进行检查,因为这个文件可能会揭示加密区域的密码,访问的网站信息,打开的文档,已登录的用户,打印的项目等等。

特别是机械驱动器上的数据以分散的方式存储;然而,分页文件或交换文件的优势在于数据可以以连续的方式存储,一个接一个地,从而实现更快的访问时间。

建议将分页文件的大小设置为内存量的 1.5 倍,并且如果可能的话,将其存储在一个单独的驱动器上,而不仅仅是一个单独的分区。

Pagefile.sys可以在 Windows 注册表路径中找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

总结

在本章中,我们花时间介绍了一些关于非易失性存储介质的基础知识,即在介质没有供电时仍然存储数据。非易失性介质包括不同类型的硬盘驱动器,如机械和固态 PATA 和 SATA 驱动器、闪存驱动器和存储卡。

包括 SSD 在内的新型存储介质设备使用一种称为 NAND 闪存的特殊类型的闪存存储数据。这种闪存比传统的机械驱动器快得多,更耐用,因为设备不含有运动部件;然而,它们目前仍然相当昂贵。

我们还研究了与各种操作系统相关的各种文件系统,并看到数据的最小分配被称为簇,其中可以存在松弛空间。松弛空间是簇内未使用的空间,可以隐藏数据。数据本身具有不同的状态,可以是静止的、运动中的或正在使用的。无论数据的状态如何,始终存在一些关于数据本身的信息,称为元数据。

用户或操作系统访问的任何数据都会暂时存储在易失性内存或 RAM 中。尽管数据可以在非易失性内存上存储很长时间,但当易失性内存(RAM)的电荷丢失时,数据也会丢失。硬盘的一个区域称为分页文件,可以充当虚拟 RAM,使计算机认为其安装了更多的 RAM。

我鼓励您进行更多的研究,扩展您对这些主题的了解,让您对所涵盖的内容有更多的理解。现在让我们继续下一章,我们将学习有关调查程序和事件响应的最佳实践,例如获取易失性数据和处理和分析实时机器的程序。

第四章:事件响应和数据获取

有时很难确定什么样的东西算是证据,特别是在调查刚开始时,可能还没有收集或陈述所有发生的事实。就像任何调查一样,我们应该意识到并遵循获取证据的指南、实践和程序,以确保它不被篡改,或者在最坏的情况下丢失。

在犯罪现场,比如说枪击案,有一些特定的物品可能立即被视为证据。物证很容易被收集,放入证据袋中,标记,然后运送到实验室和安全存储区域进行保管。这些证据可能包括已使用的子弹壳、也许是一把枪、指纹和血样。别忘了还有目击证人的陈述和CCTV(闭路电视的缩写)录像。还有值得关注的是,要考虑到执法机构的人员可能会出现在现场,以及他们可能到达的顺序。看起来很简单。

然而,当报告涉及计算机或智能设备的违规行为或犯罪时,收集证据有时并不像想象的那么简单,因为在将任何物品标记为证据之前,必须考虑许多因素。

例如,如果桌面参与了行为,我们是只带走主机还是也带走显示器、键盘、鼠标和扬声器?打印机和扫描仪等其他外围设备呢?现场是否有任何额外的固定或可移动存储介质,我们也要带走吗?

本章回答了所有这些问题,并提供了事件响应、证据获取和其他主题的指南和最佳实践,包括:

  • 数字证据获取程序

  • 保存证据的完整性

  • 写阻塞和哈希

  • 开机与关机设备的获取

  • 现场获取的最佳实践

  • 数据成像和哈希

  • 责任链

数字证据获取和程序

正如我们在上一章中所讨论的,数据可以存储在固定和可移动的存储介质上。然而,数据可以很容易地被删除或完全丢失,这取决于许多必须考虑的因素,如果我们要确保数据的保存。甚至可以说,数字存储面临的威胁比纸质存储更多。以下是对两者威胁的一些比较:

  • 纸质存储的威胁包括:

  • 火灾和湿度

  • 虫害

  • 年龄

  • 自然灾害——洪水、地震、龙卷风、飓风等等

  • 存储介质上的数据威胁包括:

  • 人为错误和疏忽

  • 磁性和电磁场

  • 水和凝结

  • 灰尘

  • 影响

  • 电压

  • 静电

  • 自然灾害——洪水、地震、龙卷风、飓风等等

数据何时成为证据?在考虑发生的事件时,特定数据可能对调查具有相对价值。

事件响应和第一响应者

保存证据并不仅仅是在获取数据时开始,而是在早期对嫌疑设备进行物理检查时就开始了。对于疑似犯罪或违规行为,应该有一种结构化的反应,就像报警给警察一样。同样,一个人打电话给紧急服务,然后派遣警察、消防队和救护人员以及其他第一响应者,他们可能会将问题升级到联邦调查局或其他机构。处理需要数字调查的报告时,也应该有类似的指挥链。

当发现或怀疑有违规行为或犯罪时,应该有专门的第一响应者被警报并被召唤到现场。这个人通常对设备、网络甚至组织中的 IT 基础设施(如果适用)有一定的了解。

第一响应者人员可能包括:

  • 系统管理员

  • 网络管理员

  • 安全管理员

  • IT 管理员

虽然前述角色中的人员可能不擅长数字取证或数字调查,但他们将负责保护现场,并确保数据、外围设备、设备和存储介质不被未经授权的个人使用、篡改、移除或损害。

急救人员的职责包括:

  • 作为第一批应对现场的人员(正如名字所示),并进行初步评估

  • 以房间中心为焦点,以圆形方式完全记录现场和房间

  • 通过不允许未经授权的用户或嫌疑人访问设备或区域,特别是易挥发的数据和存储介质,来保护现场

  • 保存和包装证据以便运输,确保使用责任链CoC)表格

文档记录和证据收集

应该由急救人员进行现场文档记录,以帮助调查。现场文档记录应包括照片、视频、语音记录和以下内容的手动文档记录:

  • 设备所在的房间(桌子、天花板、入口/出口、窗户、照明、电源插座和数据插座)

  • 设备的状态(开启、关闭、电源指示灯闪烁)

  • 屏幕内容(如果设备正在运行),操作系统,运行程序,日期和时间,有线和/或无线网络连接

  • 书籍、笔记、纸张

  • 连接和断开的电缆

一旦现场由急救人员保护和记录,如果尚未被警告,还应该召集法庭调查员。

如果急救人员接受了证据收集和保存的培训,他们也可以开始获取可以视为物理证据的东西。

物理证据的例子包括:

  • 计算机主机

  • 笔记本电脑

  • 平板电脑

  • 固定和可移动存储介质:硬盘驱动器、光盘、磁带存储、存储卡、读卡器、适配器、对接站、打印机、扫描仪、手机和 iPod。可能已用于进行侵入的媒体和 MP3 播放器以及其他设备。路由器和交换机也可能包含证据,例如连接日志、源和目的地地址,甚至访问的网站。

  • 电缆和充电器

物理证据收集和保存

在考虑证据收集阶段的物理方面时,应该考虑。与任何其他调查一样,应该在遵循适当的指南和最佳实践的同时进行文档记录、收集和保存,以确保调查的完整性。例如,在犯罪现场,证据必须被正确识别,标记为由授权人员处理,并接受调查程序的培训,这些程序可以在法庭上受到审查。

急救工具包应包含以下物品,以准备在现场进行文档记录、证据收集和保存:

  • 防护服,包括眼镜和手套

  • 防静电垫或腕带

  • 标识标签、贴纸和便携式标签设备(如果有)

  • 各种笔和标记工具,便于识别

  • 电缆束带

  • 各种尺寸的十字螺丝刀、平头螺丝刀、扭矩螺丝刀和专用螺丝刀或螺丝刀头的工具包

  • 手电筒和放大镜

  • 扣押和保管责任表格

  • 容器、盒子和包装材料,包括防静电和牢固的袋子

这是一个预算有限但便携且非常有组织的螺丝刀套装,我将其放在我的急救工具包中。它具有打开台式机、笔记本电脑、平板电脑的所有附件,甚至用于移动和打开可移动存储介质,如硬盘驱动器、光驱,甚至软盘驱动器的螺丝刀:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

物理获取工具

我们已经看过了收集和获取物理证据所需的工具,但是我们获取和提取数字证据需要什么工具呢?还记得我们在第三章中讨论的不同类型的存储介质和文件系统吗?我们看到许多存储介质都有自己的连接器,因为它们的尺寸各不相同。

以下是从证据获取时所需的一些设备清单:

  • 写保护器(也可以基于软件)

  • 读卡器

  • 各种适配器(USB 至 SATA 和 EIDE,USB 至各种类型的 USB)

  • 设备电缆,如电源、SATA、EIDE、HDMI、VGA

  • 网络电缆,如直通、交叉、控制台

以下图片显示了各种 USB 适配器的集合,所有价格都在 10 美元以下,并且都可以在亚马逊上购买:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

对于笔记本硬盘,我还使用了一个 SATA 至 USB 3.0 适配器,就像这里看到的一样:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

用于连接路由器和交换机的控制台电缆和串行至 USB 电缆也可以包含在您的工具包中,就像这里看到的一样:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

所有移动设备,包括手机和平板电脑,也可以通过 USB 端口连接到笔记本电脑和台式电脑。以下图片显示了一个 OTG 电缆,它可以将 USB 设备连接到具有 OTG 功能的手机或平板电脑:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

物理收集和保存指南:

  • 标记所有电缆和连接器

  • 根据需要使用标记的证据收集袋

  • 在存储具有无线和无线电功能的设备时,可能需要使用特殊的强固袋,以防止与其他设备通信

  • 将硬盘驱动器和闪存驱动器等敏感设备存放在防静电袋和保护外壳中

  • 标记用于运输途中存储的容器

  • 在将证据从一个人/处理者传递给另一个人/处理者时保持保管链表格(本章后面讨论)

挥发性顺序

在收集证据时,我们应该牢记数据的挥发性。正如本章前面提到的,数据很容易丢失或被销毁。因此,在收集数据时,一个良好记录和常见的最佳做法是尽可能按照最易挥发至最不易挥发的顺序收集证据。

数字证据科学工作组SWGDE)的现场系统获取文件列出了从最易挥发至最不易挥发和关键的挥发顺序如下:

  • RAM

  • 运行进程

  • 活动网络连接

  • 系统设置

  • 存储介质

保管链表格

保管链表格是一种法律上确保证据完整性的表格,因为它在个人之间交换证据时提供了一定程度的责任追究,因此在填写表格时需要个人身份证明。该表格提供了从现场收集到在法庭上呈现的交通和交换的确切记录和账目。

保管链表格上的一些典型字段包括:

  • 案件编号

  • 罪行

  • 受害者和嫌疑人姓名

  • 扣押日期和时间:

  • 扣押时的位置

  • 物品编号

  • 物品描述

  • 释放和接收物品的个人签名和身份证明

  • 处置授权

  • 证据销毁见证

  • 交还给合法所有者

可以直接从国家标准与技术研究所NIST)下载样本保管链表格:

www.nist.gov/document/sample-chain-custody-formdocx

开机与关机设备获取

在调查已开机和已关机的设备时,必须特别考虑数据的挥发性。启动、重新启动或关闭设备可能会导致数据被写入硬盘甚至在 RAM 和分页文件中丢失。

已开机设备

在调查通电设备时,应采取以下预防措施:

  • 如果怀疑设备可能处于休眠状态,请移动鼠标或在触摸板上滑动手指。不要点击按钮,因为这可能会打开或关闭程序和进程。

  • 拍摄和记录屏幕和所有可见的程序、数据、时间和桌面项目。

  • 拔掉台式机的电源线,拆下便携设备的电池(如果可能)。

非常重要的是,尽可能少地修改 RAM 和分页文件中存储的数据。后续章节将使用像 Guymager 和 Kali Linux 中的 DC3DD 这样的镜像工具进行更多介绍。其他实时获取工具,如 C.A.I.N.E 和 Helix,也可以用于获取 RAM 和分页文件。

有很多原因需要镜像和获取 RAM。如前一章所述,用户可能已加密的数据可能存储在未加密状态的 RAM 中。如果分析 RAM 和分页文件,可以提取和分析已登录用户、已打开的程序、已访问的文件和正在运行的进程。但是,如果设备关闭或重新启动,这些数据和证据很容易丢失。

对于通电的便携式设备和通电设备,应尽可能拆下电池。然而,有些设备可能没有可拆卸的电池。在这种情况下,应按下电源按钮 30 到 40 秒,强制设备关机。

关机设备

关机设备不应该被打开,除非由法证调查员进行。必须采取特殊措施确保现有数据不被擦除,也不会写入新数据。

设备通常看起来像是关机的,但它们可能处于休眠或休眠状态。作为一个简单的测试,可以移动鼠标并打开显示器(如果有的话)以确定它们实际上处于这两种状态之一。即使它们处于关闭状态,也应该拍摄屏幕和端口。

在已关闭状态下调查便携式和移动设备时,建议拆下电池(如果可能),并将其放入证据袋中,以确保一旦拔掉插头就没有意外打开设备的方法。根据NIST.SP.800-101r1移动取证指南,应注意,即使处于关闭状态,拆下电池也可能改变易失性内存中的内容。

写入阻塞

一旦我们的证据被正确记录和收集,我们就可以开始着手获取实际的数字证据。我会在几次提到这一点,但原始证据应该只用于创建法证副本或镜像,这将在本章和其他章节中进一步讨论。

处理原始证据可能会修改介质的内容。例如,将扣押的笔记本电脑引导到其原生操作系统将允许数据被写入硬盘,也可能会擦除和修改 RAM 和分页文件中包含的内容。

为防止发生这种情况,必须使用写入阻塞器。正如其名称所示,写入阻塞器可以防止数据被写入证据介质。写入阻塞器既有硬件类型,也有软件类型。如果没有硬件写入阻塞器,软件版本也可以在法证操作系统中找到,包括在第一章中提到的数字取证导论中,也作为一些商业和开源工具的独立功能,如 EnCase 和 Autopsy。

再次强调,在调查中使用写入阻塞器保护和保留原始证据不被修改非常重要。以下图片显示了一个便宜而高效的便携式 SATA 和 IDE 适配器,带有写入阻塞开关,用于驱动获取和恢复:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据成像和哈希

成像是指精确复制数据,无论是作为文件、文件夹、分区还是整个存储介质或驱动器。当复制文件和文件夹时,根据其属性设置为系统或隐藏,可能不会复制所有文件。为了防止文件被遗漏,我们执行一种特殊类型的复制,其中每一位都被精确复制或成像,就像在当前介质上拍摄数据的照片或快照一样。

精确复制每一位数据,被称为物理图像。执行比特流复制可以确保复制的完整性。为了进一步证明这一点,对原始证据和物理图像进行哈希计算并进行比较。如果复制的数据有一位不同,哈希值将会有很大的不同。

原始证据应该只由合格和授权的专业人员处理,并且也只能用来创建法医学上可靠的物理图像。否则,原始证据绝不能被使用,因为这会损害完整性和调查。

消息摘要(MD5)哈希

特定算法产生哈希值,并用于验证证据的完整性,证明数据没有被修改。哈希值可以被看作是数字指纹,因为它们是独一无二的,在证据和物理图像的识别中起着重要作用。

尽管存在漏洞,但一种常用的加密哈希算法是消息摘要MD5),它产生 128 位的十六进制输出值。

作为一个工作示例,让我们打开浏览器,前往passwordsgenerator.net/md5-hash-generator/

该网站将单词和句子创建为字符串的哈希值。在这个例子中,我输入了字符串Digital Forensics with Kali Linux,不包括括号。自动计算的 MD5 值显示为 7E9506C4D9DD85220FB3DF671F09DA35,如下面的截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

通过从Kali中移除K,从现在读作Digital Forensics with ali Linux的相同字符串中,MD5 现在读作 7A4C7AA85B114E91F247779D6A0B3022,如下面的截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作为一个快速比较,我们可以看到,只是从Kali中移除K就会产生明显不同的结果:

  • Digital Forensics with Kali Linux: 7E9506C4D9DD85220FB3DF671F09DA35

  • Digital Forensics with ali Linux: 7A4C7AA85B114E91F247779D6A0B3022

我鼓励你自己尝试一下,也许在字符串中添加逗号或句号以进一步比较哈希值。

安全哈希算法(SHA)

在取证中常用的另一种加密哈希算法是 SHA1。安全哈希算法-1SHA1)比 MD5 更安全,因为它产生的是 160 位的输出,而不是 MD5 的 128 位输出。由于已知对 MD5 和 SHA-1 的碰撞攻击,现在更安全和更健壮的哈希选项是SHA-2

SHA-2 实际上是一组哈希算法,而不仅仅是一个,就像 SHA-1 一样,最常见的位长度是 SHA-256,它产生 256 位的输出。SHA-2 的备用位长度算法包括 SHA-224、SHA-384 和 SHA-512。

使用更强大的加密算法,被攻击或 compromise 的可能性就越小。这意味着证据和物理图像的完整性保持完好,这在法庭鉴定和法庭案件中将会很有用。

更多关于创建哈希的内容将在第五章中进行演示,使用 DC3DD 和 Guymager 进行证据获取和保护,使用 DC3DD 和 Guymager。

设备和数据获取指南和最佳实践

虽然我已经试图给你一个收集和保留证据程序的概述,但有几份官方文件我强烈建议你阅读并熟悉,它们都提供了关于现场文档、证据收集和数据获取的详细信息和指南。

SWGDE(数字证据科学工作组)计算机取证最佳实践版本 3.1,于 2014 年 9 月发布,概述了以下领域的计算机取证最佳实践:

  • 证据收集和处理

  • 证据获取和运输

  • 调查开机和关机系统媒体和服务器的指南

  • 考试和报告

完整的 SWGDE 计算机取证最佳实践文件可以从这里下载:

www.swgde.org/documents/Current%20Documents/SWGDE%20Best%20Practices%20for%20Computer%20Forensics

SWGDE 捕获活动系统文件,第 2.0 版,于 2014 年 9 月发布,虽然篇幅较短,内容不够详细,但仍适用于涉及活动(开机)系统的取证调查。该文件提供了调查活动系统时的指南,包括易失性顺序、内存取证包括分页文件取证,以及活动物理和文件系统获取。

这份文件只有六页,可以从这里下载:

www.swgde.org/documents/Current%20Documents/SWGDE%20Capture%20of%20Live%20Systems

NIST(国家标准与技术研究所)移动设备取证指南 也是另一份非常有用的文件,专门适用于移动设备。该文件的第一版于 2014 年发布,详细介绍了移动取证调查的各个方面。内容包括:

  • 移动和手机特性

  • 现场评估和文档记录

  • 设备隔离和包装

  • 设备和存储器获取

  • 检查、分析和报告

完整文件可以从这里下载:

nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-101r1.pdf

总结

如果只有一件事我希望你从本章中记住,那就是原始证据,特别是硬盘、存储介质和 RAM 镜像,只能用来创建取证完整的比特流副本。原始证据永远不能被处理。

总结,当有违规行为被报告时,应该有一个指定的第一响应者,按照规程执行文档记录和保护现场以及收集和保留证据的任务。第一响应者应该携带各种工具和物品的工具包,用于获取证据,并在将证据交给其他方时,确保保持证据链的完整性。

我们还研究了调查开机和关机设备时的各种程序和最佳实践,并讨论了使用写入阻断器防止原始证据被篡改,然后使用哈希工具进行完整性验证的重要性。

你已经走了这么远,我知道这可能有点信息过载,但现在我们可以进入本书的实践部分,在 Kali Linux 中使用数字取证工具开始我们的调查。让我们开始吧!

第五章:使用 DC3DD 和 Guymager 进行证据获取和保留

在上一章中,我们了解到文档和适当的程序对于任何调查都是关键的。这些确保了调查的完整性,通过提供数据真实性的证据和原始证据和文档的保留,可以在重复使用工具和方法时达到完全相同的结果。

在本章中,我们将演示使用比特流副本进行数据取证的取证技术。

我们将使用的第一个获取工具称为DC3DD国防部网络犯罪中心)。DC3DD 是非常流行的数据转储或 DD 工具的一个补丁,用于取证获取和哈希。

这些是数据转储DD)的特点:

  • 比特流(原始)磁盘获取和克隆

  • 复制磁盘分区

  • 复制文件夹和文件

  • 硬盘驱动器错误检查

  • 对硬盘驱动器上的所有数据进行取证擦除

然后我们将探索另一个非常流行的获取工具,名为 Guymager,它在 GUI 中提供了许多相同的功能。

Linux 中的驱动器和分区识别

对于 Kali 或任何 Linux 变体的新用户来说,他们可能会发现 Kali 中的驱动器和分区识别和命名与 Windows 设备不同。

在 Linux 中,典型的设备可以被称为/dev/sda,而在 Windows 中,驱动器通常被识别为Disk 0Disk 1等等:

  • /dev:指的是 Linux 可以读取或写入的所有设备和驱动器的路径

  • /sda:指的是SCSI小型计算机系统接口),SATA 和 USB 设备

sd代表SCSI 大容量存储驱动器,后面的字母代表驱动器号:

  • sda:驱动器0或第一个被识别的驱动器

  • sdb:第二个驱动器

虽然 Windows 将分区识别为主分区、逻辑分区和扩展分区,但 Linux 分区被识别为驱动器字母后的数字:

  • sda1:第一个磁盘(sda)上的分区 1

  • sda2:第一个磁盘上的分区 2

  • sdb1:第二个磁盘(sdb)上的分区 1

  • sdb2:第二个磁盘上的分区 2

使用 fdisk 命令进行设备识别

在开始使用 DD 之前,我需要再次提醒您 DD 的一个特点,即能够擦除数据、分区和驱动器。因此,您可能会发现 DD 有时也被亲切地称为数据销毁者。在使用 DD 和 DC3DD 时,一定要首先确定您的设备、分区、输入和输出文件以及参数。

在本章的练习中,我将使用一个旧的 2GB 闪存驱动器进行使用 DC3DD 进行获取过程。在执行任何获取操作之前,应该先运行fdisk -l命令来列出您的设备并确保您已经了解它们。如果前一个命令不起作用,可能需要使用sudo fdisk -l命令。

在以下截图中,已经运行了fdisk -l命令,然后连接了 2GB 闪存驱动器以列出已连接的设备。有一个硬盘列为sda。主分区列为sda1扩展Linux swap分区分别列为sda2sda5

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在连接 2GB 闪存驱动器进行获取后,再次运行fdisk -l命令,并且可以在以下截图中看到以下细节:

  • 磁盘sdb

  • 大小1.9GB

  • 扇区大小512 字节

  • 文件系统FAT32

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如前面的截图所示(并且在本章的前面也有解释),Kali Linux 识别了两个设备:

  • sda:带有三个分区的主硬盘

  • sdb:要进行取证获取或成像的闪存驱动器

现在我们已经确定了要成像的驱动器(sdb),我们可以开始使用 DC3DD 进行取证成像。

尽管我使用了一个较旧的 2GB 闪存驱动器来演示 DC3DD 的用法,但您可以使用任何驱动器(便携式或其他)来练习本章中的工具。请确保使用fdisk -l命令来识别您的驱动器和分区。

保持证据的完整性

为了证明证据没有被篡改,应在获取之前和期间或之后提供证据的哈希。

在 Kali Linux 中,我们可以使用md5sum命令,后跟设备的路径,来创建证据/输入文件的 MD5 哈希。例如,md5sum /dev/sdx

您还可以尝试使用超级用户权限输入sudo md5sum /dev/sdx命令。

在此示例中,我将使用的 2GB 闪存驱动器(名为test_usb)被识别为sdb,因此我将使用的命令如下截图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在前面的示例中,md5sum对 2GB 闪存驱动器的输出显示为“9f038…1c7d3 /dev/sdb”。当使用 DC3DD 执行驱动器的获取或取证成像时,我们还应该在对创建的映像文件输出进行哈希时获得确切的结果,以确保原始证据和副本完全相同,从而保持证据的完整性。

我还使用以下语法创建了一个 SHA-1 哈希(将用于比较目的):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在 Kali Linux 中使用 DC3DD

DC3DD 是由国防部网络犯罪中心开发的,并且在 DD 更新时进行更新。DC3DD 提供了 DD 的最佳功能,包括:

  • 使用更多的算法选择(MD5、SHA-1、SHA-256 和 SHA-512)进行即时哈希处理

  • 用于监视进度和获取时间的仪表

  • 将错误写入文件

  • 分割输出文件

  • 文件验证

  • 擦除输出文件(模式擦除)

尽管我们只关注 DD 和 DC3DD,但还有另一个名为DCFLDD的工具,可以安装在基于 Linux 的系统上。DCFLDD 是 DD 的增强版本,并由Defense Computer Forensics LabsDCFL)维护和支持,其发布时间表与 DD 不同步更新。

DC3DD 是一个 CLI,可以通过首先打开终端并输入dc3dd来轻松在 Kali Linux 中运行。首先建议使用dc3dd --help命令,该命令列出了与dc3dd一起使用的可用参数:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如前面的屏幕截图所示,使用dc3dd --help命令,DC3DD 命令的典型用法如下:

dc3dd [option 1] [option 2] ... [option n]

在我们之前的示例中,我使用了以下选项:

dc3dd if=/dev/sdb hash=md5 log=dc3ddusb of=test_usb.dd

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • if:指定输入文件,即我们将进行成像的设备。

  • 哈希:指定用于完整性验证的哈希算法的类型。在这种情况下,我使用了较旧的 MD5 哈希。

  • log:指定记录设备和获取详细信息的日志文件的名称,包括错误。

  • of:指定由 DC3DD 创建的取证映像的输出文件名。在本示例中指定了.dd映像文件类型,DC3DD 也识别其他格式,包括.img,如后面的示例中所示。

应注意设备大小(以扇区和字节表示),并稍后与设备的输出结果进行比较。

最后一行还显示了获取过程的进度和状态,显示了已复制的数据量、经过的时间(以秒为单位)以及成像过程的速度(以 Mbps 为单位):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

要获取的驱动器或文件越大,所需的时间就越长。我建议您喝杯咖啡或清爽的饮料,或者看看 Packt 提供的其他精彩书籍www.packtpub.com/

一旦获取过程完成,输入和输出结果将被显示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

分析结果,我们可以看到已经成像了相同数量的扇区(3913664),没有坏扇区被替换为零。我们还可以看到为图像创建了确切的 MD5 哈希,确保我们创建了一个没有修改的精确副本。

在终端中,我们还可以使用ls命令列出目录内容,以确保 DC3DD 输出文件(test_usb.dd)和日志(dc3ddusb)已经创建:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

要访问我们的取证图像和日志文件,我们可以通过点击“位置”(左上角)然后Home,进入/home目录。

在我的Home文件夹中,第一个文件2GBdcedd.dd是使用of=test_usb.dd命令由 DC3DD 创建的输出图像。最后一个文件dc3ddusb是日志文件,当我们使用log=dc3ddusb命令时创建的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

保留这个日志文件很重要,以记录获取过程及其结果,这些结果在完成时显示在屏幕上:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在未来的章节中,我们将使用各种工具分析获取的取证图像;然而,如果调查人员希望,该图像也可以被复制或直接克隆到另一个设备。

例如,我们可以将之前获取的取证图像(test_usb.dd)克隆到一个新的被识别为sdc的驱动器上。执行此任务的命令是:

dc3dd if=test_usb.dd of=/dev/sdc log=drivecopy.log

将图像复制到驱动器时,目标驱动器的大小应与图像文件相等或更大。

使用 DC3DD 进行文件分割

根据证据的大小,可管理性和可移植性可能成为一个问题。DC3DD 有能力将取证获取的图像分割成多个部分。

这是通过使用ofszofs选项完成的:

  • ofsz指定了每个输出文件部分的大小

  • ofs指定了带有数字文件扩展名的输出文件,通常为.000.001.002

始终确保你已经为文件扩展名指定了足够的零。逻辑上,.000允许比.00更多的部分。

在这个例子中,我使用了之前的相同的 2GB 闪存驱动器;但是,为了演示目的,你会注意到两个变化。

我已经指定使用 SHA-1 而不是 MD5 哈希,并且输出文件类型将是.img而不是以前使用的.dd

在这种情况下,成像的 2GB 闪存大小将被分成多个部分(总共四个),每个部分为 500MB,使用ofsz=500M,部分的名称为2GBdc3dd2.img.ooo2GBdc3dd2.img.oo12GBdc3dd2.img.oo22GBdc3dd2.img.oo3

用于实现这一点的命令是:

dc3dd if=/dev/sdb  hash=sha1  log=dd_split_usb  ofsz=500M ofs=split_test_usb.img.ooo

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

完成后,设备的输入结果显示了 SHA-1 哈希输出,并显示了分割图像文件的第一部分:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

再次使用ls命令,我们可以看到四个分割输出文件的扩展名都是从.000.003的数字格式:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图像文件的所有分割部分都可以在Home文件夹中找到,以及日志文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

验证分割图像文件的哈希值

要验证分割文件的哈希值,可以使用以下命令:

cat split_test_usb.img.* | sha1sum

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这也与 2GB 闪存驱动器本身的sha1sum输出相匹配,通过使用以下命令显示:

sha1sum /dev/sdb

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 DC3DD 擦除驱动器

我们已经看到 DC3DD 作为一个非常出色的取证工具,但我还想进一步介绍它作为数据擦除工具的能力。DC3DD 可以通过三种方式覆盖数据来擦除数据和驱动器:

  • 使用dc3dd wipe=/dev/sdb命令覆盖并填充数据和驱动器为零。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 使用dc3dd wipe=/dev/sdb pat=000111命令覆盖并填充数据和驱动器使用十六进制模式。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 使用dc3dd wipe=/dev/sdb tpat=cfsi命令覆盖并填充数据和驱动器使用文本模式。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 Guymager 进行图像采集

Guymager 是另一个独立的取证工具,可用于创建取证图像和执行磁盘克隆。Guymager 由 Guy Voncken 开发,完全开源,具有 DC3DD 的许多相同功能,也仅适用于基于 Linux 的主机。虽然一些调查员可能更喜欢 CLI 工具,但 Guymager 是一个 GUI 工具,适合初学者,因此可能更受欢迎。

对于此采集,我还将使用 DC3DD 示例中使用的相同 2GB 闪存驱动器,最后我们可以比较结果。在获取和创建证据和驱动器的取证图像时,继续使用写入阻止器非常重要,以防止向驱动器写入数据或修改原始证据文件。

与 DC3DD 采集中一样,我们应该首先确保熟悉连接到我们机器的设备,使用fdisk -lsudo fdisk -l命令。

运行 Guymager

可以通过 Kali 菜单启动 Guymager,单击侧边菜单上的应用程序,然后单击取证,向下滚动到 Guymager:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

也可以通过终端启动 Guymager,输入guymager。也可以尝试sudo guymager命令。一旦启动,日志文件和配置(cfg)文件的默认位置可以根据需要更改:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Guymager 应用程序运行,然后显示 Kali Linux 中识别的现有驱动器。如下截图所示,显示了正在使用的 2GB 闪存驱动器的详细信息,包括以下内容:

  • Linux 设备:识别为/dev/sdb

  • 型号:USB_Flash_Memory

  • 状态:显示为空闲,因为图像采集尚未开始

  • 大小:2.0GB

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果您的设备在 Guymager 中未列出,或者需要添加其他设备,请单击应用程序左上角的重新扫描按钮。

使用 Guymager 获取证据

要开始采集过程,请右键单击证据驱动器(在本例中为/dev/sdb)并选择获取图像。请注意,如果您希望将证据驱动器克隆到另一个驱动器,则还可以使用克隆设备选项。再次提醒,当克隆设备时,目标设备的容量必须等于或超过源(原始)证据驱动器的容量:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在实际采集过程开始之前,调查员被提示输入有关自己和证据的详细信息,分为以下三个部分:

  • 文件格式:

  • 文件扩展名.dd.xxx.Exx

  • 分割大小:允许调查员选择多个图像部分的大小

  • 案例管理信息:案件编号,证据编号,审查员姓名,描述和备注

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 目的地:

  • 图像目录:创建的图像文件和日志(信息文件)的位置

  • 图像文件名:图像文件的名称

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 哈希计算/验证:

  • 可以选择和计算多种哈希算法,允许调查人员从 MD5、SHA-1 和 SHA256 中进行选择

  • 获取后重新读取源以进行验证:这验证了源

  • 获取后验证图像:这验证了目的地

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Guymager 还添加了一个方便的“复制图像…”按钮,可以创建重复的副本,而无需重复输入数据的过程。

对于新用户,您可能想要指定图像文件将被保存的目录。在目标部分,点击图像目录按钮,选择您的位置。对于这次获取,我选择了桌面目录作为图像和日志/信息文件的位置:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

下面的截图显示了我用于 Guymager 获取的数据,选择了桌面作为图像目录和 MD5 和 SHA-1 哈希算法:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

点击开始按钮后,您会注意到状态从空闲变为运行。进度字段现在也显示一个进度条:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

仔细看屏幕左下角的细节,我们可以看到大小、图像和信息文件路径、名称和扩展名、当前速度和选择的哈希计算。我们还看到图像验证已打开:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

获取过程完成后,状态字段按钮的颜色从蓝色变为绿色,表示获取过程已完成,并且如果在哈希验证/计算区域选择了验证选项,则还会显示“完成-已验证&ok”。进度条也显示 100%:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们的输出文件和信息文件可以在桌面上找到,因为这是在之前的获取图像部分中指定的。如果您选择了不同的目录,请使用新终端中的cd命令切换到新目录。在下面的截图中,我使用cd Desktop命令切换到桌面目录,然后使用ls命令列出内容:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们还可以浏览桌面,甚至是桌面文件夹,打开信息文件,其中包含有关获取细节的信息:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

哈希验证

在图像目录位置双击信息文件,可以检查从开始到完成的获取过程的各种细节,包括哈希输出。

这个信息文件包含的数据比 DC3DD 生成的日志文件要多得多,包括案件管理细节:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

让我们更仔细地查看.info文件中的哈希细节。

我们可以看到 MD5 和 SHA-1 哈希已经被创建和验证,并且如下截图的最后一行所述,“图像验证 OK。图像包含了确切写入的数据”:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果我们将这些哈希与使用 DC3DD 创建的哈希进行比较,我们将得到完全相同的 MD5 和 SHA-1 输出,证明这些图像是原始证据的精确取证副本。

将由 DC3DD 创建的哈希与之前由 Guymager 创建的哈希进行比较,如下截图所示:

  • DC3DD MD5 哈希

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • DC3DD SHA-1 哈希

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

总结

在本章中,我们已经介绍了 Kali Linux 中两个用于获取数字证据的工具。能够准确区分设备非常重要,这样您就可以使用fdisk -l命令准确获取证据文件的取证和精确副本或图像。对于取证分析,需要使用证据的比特流副本,因为这些副本提供了证据的比特位的精确副本,这就是为什么我们使用 DC3DD 和 Guymager。

首先,我们使用了 DC3DD,这是数据转储工具的增强版,并通过终端执行了许多任务,包括设备成像、哈希、文件分割和文件验证。尽管 DC3DD 是一个命令行界面程序,但选项仍然相同,使其相当容易学习和使用。

我们的第二个工具 Guymager 具有内置的案件管理功能,并且与 DC3DD 有许多功能上的相似之处,但它是一个图形界面工具,可能更容易使用。

这两个工具都能提供准确和取证上可靠的结果。对于那些可能不经常使用 Guymager、DD 和 DC3DD 的人来说,Guymager 可能是更容易使用的工具,因为所有获取选项,包括克隆,都可以通过图形界面轻松获得,并且具有易于阅读的日志,提供案件管理细节。然而,对于高级用途,如驱动擦除,您可能希望使用 DC3DD。然而,最终选择仍然取决于您。

在 Kali Linux 中,我们的第一个取证工具还不错。接下来,我们将使用实际的取证图像,使用NIST(国家标准与技术研究所)创建的一些分析和文件恢复工具。令人兴奋的事情!

第六章:使用 Foremost、Scalpel 和 Bulk Extractor 进行文件恢复和数据切割

现在我们已经学会了如何创建证据的取证镜像,让我们来看看如何使用 Foremost、Scalpel 和 Bulk Extractor 进行文件恢复和数据切割。

上次我们讨论文件系统时,我们看到各种操作系统使用自己的文件系统来存储、访问和修改数据。同样,存储介质也使用文件系统来做同样的事情。

元数据,或关于数据的数据,帮助操作系统识别数据。元数据包括技术信息,如创建和修改日期,以及数据的文件类型。这些数据使定位和索引文件变得更加容易。

文件切割是从未分配空间中检索数据和文件,使用文件结构和文件头部等特定特征,而不是由文件系统创建或关联的传统元数据。

正如其名称所示,未分配空间是存储介质上被操作系统或文件表标记为空或未分配给任何文件或数据的区域。尽管文件的位置和信息不在,有时会损坏,但文件的头部和尾部仍然包含可以识别文件甚至文件片段的特征。

即使文件扩展名已更改或完全丢失,文件头包含的信息可以识别文件类型,并尝试通过分析头部和尾部信息来切割文件。数据切割是一个相当冗长的过程,应该使用自动化工具来节省时间。如果调查人员知道他们正在寻找的文件类型,这也有助于更好地聚焦和节省时间。尽管如此,这是取证工作,我们知道时间和耐心至关重要。

一些常见的文件类型,如十六进制格式在文件头中显示:

  • 联合图像专家组JPEG):FF D8 FF E0

  • 便携式文档格式PDF):25 50 44 46

虽然关于文件和头部的更多分析将在后面的章节中进行,让我们来看看 Kali Linux 中用于数据切割的三种工具。

Foremost 和 Scalpel 中使用的取证测试镜像

对于这个工具,使用了由 Nick Micus 创建的数字取证工具测试镜像,专门用于测试数据切割工具。选择这个特定的镜像进行练习的主要原因之一是 Nick Mikus 被列为 Foremost 的贡献开发者之一。正如在 Foremost 的第一行中所看到的,显示了版本号以及作者 Jesse Kornblum 和 Kris Kendall。该镜像可以在dftt.sourceforge.net/test11/index.html上免费下载。

一旦熟悉了这个练习,可以尝试从dftt.sourceforge.net/上的其他镜像中提取数据。

使用 Foremost 进行文件恢复和数据切割

Foremost 是一个简单而有效的 CLI 工具,通过读取文件的头部和尾部来恢复文件。我们可以通过单击应用程序| 11-取证| Foremost 来启动 Foremost:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦 Foremost 成功启动,一个终端会打开,显示程序版本、创建者和许多用法开关。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

要更好地了解 Foremost 和使用的开关,请尝试浏览 Foremost 的系统管理手册。可以通过输入以下命令来完成:

man foremost

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 Foremost 的语法如下:

foremost -i (forensic image) -o (output folder) -options

在这个例子中,我们指定了位于桌面上的11-carve-fat.dd文件作为输入文件(-i),并指定了一个名为Foremost_recovery的空文件夹作为输出文件(-o)。另外,还可以根据需要指定其他开关。

要开始使用 Foremost 切割11-carve-fat.dd图像,我们在终端中输入以下命令:

foremost -i 11-carve-fat.dd -o Foremost_recovery

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

虽然在处理过程中找到的字符看起来相当模糊,但结果将清晰地分类和总结在指定的输出文件夹中。

要快速访问 Foremost 中的一些命令,也可以使用foremost -h

指定的输出文件夹必须为空,否则您将遇到问题,如下图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看 Foremost 结果

一旦 Foremost 完成切割过程,我们就可以进入Foremost_recovery输出文件夹:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果我们打开输出目录,我们可以看到按文件类型分类的切割项目,以及包含发现详细信息的audit.txt文件夹:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

audit.text文件中,我们看到了 Foremost 找到的项目的列表视图,以及它们的大小文件偏移位置:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

audit.txt文件上滚动时,您应该看到找到的文件的摘要,这在切割较大的图像时特别有用:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

audit.txt文件中列出的前三个文件是.jpg图像文件,我们可以在Foremost_recovery输出文件夹的jpg子文件夹中看到这些文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

正如我们所看到的,Foremost 是一个非常强大的数据恢复和文件切割工具。文件切割可能需要很长时间,具体取决于驱动器或图像的大小。如果需要恢复的文件类型已知,可以使用-t选项指定该文件类型,以减少与搜索整个图像相比所需的时间。

在再次运行 Foremost 之前,请记住选择一个新的或空的输出文件夹。

使用 Scalpel 进行数据切割

Scalpel 是作为 Foremost 的一个较早版本的改进而创建的。Scalpel 旨在解决 Foremost 在切割数据时的高 CPU 和 RAM 使用问题。

在 Scalpel 中指定文件类型

与 Foremost 不同,调查人员必须在 Scalpel 配置文件中指定感兴趣的文件类型。该文件称为scalpel.conf,位于etc/scapel/

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

要指定文件类型,调查人员必须删除包含文件类型的行开头的注释,因为所有支持的文件类型都以文件类型开头的哈希标签进行注释。以下屏幕截图显示了默认的 Scalpel 配置文件(scalpel.conf),其中所有文件类型都被注释掉。请注意,每行都以井号开头:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们已经删除了一些行开头的哈希标签,以便让 Scalpel 知道搜索这些特定的文件类型,这也减少了搜索所有支持的文件类型所需的时间。以下屏幕截图显示了 Scalpel 将搜索 GIF 和 JPG 文件,因为注释已被删除:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在指定要切割的图像之前,请务必执行此步骤。未能这样做将向调查人员显示一个有用的错误消息,提醒他们这样做。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 Scalpel 进行文件切割

一旦我们对包括文件类型在内的更改并保存了scalpel.conf文件,我们就可以通过单击侧边栏上的“显示应用程序”按钮并在顶部出现的搜索框中输入scalpel来启动 Scalpel,如图所示。单击scalpel框开始:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦启动,终端会显示版本号(1.60)、作者(Golden G. Richard III),并且如前所述,它是基于 Foremost 0.69。与 Foremost 一样,Scalpel 的用法语法和其他选项也会显示出来:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这个例子中,使用了与 Foremost 相同的图像进行雕刻(11-carve-fat.dd)。与 Foremost 一样,必须指定输入文件和输出文件夹。要列出 Scalpel 中可用的选项和开关,请使用scalpel -h

Scalpel 使用了以下语法:

scalpel -o scalpelOutput/ 11-carve-fat.dd

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在前面的截图中,我们可以看到 Scalpel 构建了一个雕刻列表,显示了带有页眉和页脚信息的文件类型,以及雕刻出的文件数量。

仔细查看 Scalpel 输出产生的最后几行,我们可以看到雕刻过程完成了100%,共雕刻出了18个文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看 Scalpel 的结果

现在我们可以转到名为ScalpelOutput的输出文件夹,查看雕刻出的文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Scalpel 输出的结果与 Foremost 类似,两个输出文件夹都包含各种子文件夹,其中包括雕刻文件以及一个包含发现细节的audit.txt文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

jpg-1-o文件夹中,我们可以看到五个.jpg文件,其中三个是实际图像:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

尽管 Scalpel 的结果显示在运行工具时在雕刻列表中识别出了五个带有.jpg头和页脚的文件,但其中一些可能无法打开。这些文件很可能是误报:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

以下截图显示了audit.txt文件的片段,显示了有关雕刻文件的信息:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

比较 Foremost 和 Scalpel

尽管 Scalpel 返回的文件比 Foremost 多,但是请自行比较 Foremost 和 Scalpel 找到的雕刻文件。不幸的是,这两个工具返回的文件名不是原始文件名,在某些情况下,可能会有雕刻文件的重复,因为许多文件可能是碎片化的,看起来像是单独的文件。尝试手动查看 Foremost 和 Scalpel 输出文件夹中找到的文件,并进行自己的比较研究,看看哪个工具更成功。

在 Foremost 和 Scalpel 中使用的测试图像文件(11-carve-fat.dd)包含了各种类型的 15 个文件,如下载页面上所列出的那样(dftt.sourceforge.net/test11/index.html)。这在比较雕刻文件时应该很有用:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Bulk_extractor

Bulk_extractor 是本章中我们将介绍的第三个也是最后一个工具。正如我们迄今所见,Foremost 和 Scalpel 在文件恢复和雕刻方面非常出色,但仅限于特定文件类型。为了进一步提取数据,我们可以使用 Bulk Extractor。

虽然 Foremost 和 Scalpel 可以恢复图像、音频、视频和压缩文件,但 Bulk Extractor 可以提取几种额外类型的信息,这在调查中可能非常有用。

尽管 Bulk Extractor 能够恢复和雕刻图像、视频和文档类型文件,但 Bulk Extractor 可以雕刻和提取的其他数据包括:

  • 信用卡号码

  • 电子邮件地址

  • 网址

  • 在线搜索

  • 网站信息

  • 社交媒体资料和信息

用于 Bulk_extractor 的取证测试图像

在这个例子中,我们将使用一个名为terry-work-usb-2009-12-11.E01的免费可用证据文件。

这个文件可以直接从数字语料库网站下载,该网站允许将法证图像用于法证研究。本练习中使用的文件可以直接从downloads.digitalcorpora.org/corpora/scenarios/2009-m57-patents/drives-redacted/下载。

所需的文件是下载页面上的最后一个文件,大小只有 32MB:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 Bulk_extractor

首先输入bulk_extractor -h来启动 Bulk Extractor,显示一些常用的参数和选项:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

与 Foremost 和 Scalpel 一样,使用bulk_extractor的语法非常简单,只需要指定一个输出文件夹(-o)和法证图像。在本练习中,如前所述,我们将从terry-work-usb-2009-12-11.E01图像中提取数据,并将输出保存到名为bulk-output的文件夹中。

使用的语法如下:

bulk_extractor -o bulk_output terry-work-usb-2009-12-11.E01

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

完成后,bulk_extractor指示所有线程已完成,并提供了过程的摘要,甚至还有一些发现。如下图所示,bulk_extractor显示了 MD5 哈希值,处理的总 MB 数,甚至报告找到了三个电子邮件特征:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看 Bulk_extractor 的结果

要查看bulk_extractor的输出和发现,我们还可以在终端中显示目录列表,输入ls -l。我们可以看到bulk_extractor创建了bulk_output文件夹:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

现在我们可以输入ls -l bulk_output来列出我们的输出文件夹(bulk_output)的内容:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

列表已分成两部分,显示了bulk_extractor找到的一些工件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

需要注意的是,并非所有列出的文本文件都包含数据。只有左侧数字大于0的文本文件名才会实际包含数据。

文本文件ccn.txt信用卡号的缩写,其中包含可能被盗用、非法使用或存储以可能用于信用卡欺诈的信用卡信息。

如果我们浏览到输出文件夹位置,我们可以查看所有提取的数据,这些数据位于各个文本文件中。查看telephone_histogram.txt文件会显示电话号码:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

url.txt文件显示了访问的许多网站和链接:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这是一个简单的练习,使用了一个小的证据文件,请务必查看digitalcorpora.org/上提供的许多其他文件,并查看bulk_extractor揭示了什么。如果您的带宽和存储允许,尽可能下载更多的图像,并使用其他章节中将使用的其他工具。

总结

在本章中,我们学习了使用 Kali Linux 中的三个现成可用的工具进行文件恢复和数据提取。我们首先使用了非常出色的 Foremost 进行文件刻录,它在文件头和尾部搜索支持的文件类型。然后我们使用了更新的 Scalpel 进行相同的操作,但需要稍作修改,选择我们希望刻录的文件类型。Foremost 和 Scalpel 都向我们呈现了一个audit.txt文件,总结了刻录列表及其详细信息,以及包含实际证据的子文件夹。

Bulk_extractor 是一个很棒的工具,它可以刻录数据,还可以找到诸如电子邮件地址、访问的 URL、Facebook 的 URL、信用卡号码以及各种其他信息。Bulk_extractor 非常适合需要文件恢复和刻录的调查,可以与 Foremost 或 Scalpel 一起使用,甚至两者都可以。

现在我们已经讨论了文件刻录和恢复,让我们转向更加分析性的内容。在下一章中,我们将探讨探索 RAM 和分页文件作为内存取证的一部分,使用非常强大的 volatility。到时见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值