[揭秘]基于磁盘数据的电子取证过程详解

简介:

0×1 简介

随着计算机犯罪个案数字不断上升和犯罪手段的数字化,搜集电子证据的工作成为提供重要线索及破案的关键。恢复已被破坏的计算机数据及提供相关的电子资料证据就是电子取证。NSTRT也曾协助进行过电子取证的工作,本期NSTRT将以一个假定的案例对基于磁盘的电子取证的过程进行一次讲解。

在一般的数据取证工作中,为了证据保全,确保取证工作造成数据丢失,在获取到证据介质后,首先要做的就是对介质数据进行全盘镜像备份。在制作完镜像备份后,接下来要做的就是对镜像进行数据提取了。

本文按照数据提取的常规思路,来介绍如何利用磁盘存储和文件系统的知识来进行磁盘数据提取。

对磁盘数据进行备份的方式中,比较常见的格式有dd、img、raw等。在提取了磁盘镜像后(本处使用dd镜像),使用某些工具可以详细地分析查找各种可用的数据。这里以强大的TSK(The Sleuth Kit)工具包为例进行说明。(工具下载)The SleuthKit可以对存储镜像做基于文件系统层,数据层,inode层和文件层等多个角度的详细分析。

本例假设得到一个dd镜像文件image.dd,取证的目标是查找JimmyJungle相关的数据信息。

在本例中,我们制作好了一个dd镜像,文件名为image.dd。本次取证的目标是查找与“JimmyJungle”相关的数据信息。

在对磁盘数据进行取证时,我们会进行多个层面的分析,包括文件系统层、数据层、inode层和文件层。这些不同的分析层面互相之间有着紧密的关联。下面我们来一一介绍各个层面的对取证的作用和分析过程

0×2 文件系统层分析

在得到一个磁盘或镜像后,一般首先会先进行文件系统层分析。文件系统层分析,顾名思义,就是了解磁盘分区的文件系统信息。获取文件系统信息不是为了直接获取数据,而是为了给后续的数据层分析和文件层分析提供分析依据。这些分析依据包括扇区信息、数据区域信息、目录区域信息和簇信息等。

在TSK里面的fsstat工具用于分析镜像的文件系统信息。使用方法非常简单,直接在命令行后面加入磁盘或镜像文件的路径。如下图显示了此镜像的扇区总数为2879,数据区域位于扇区19-2879,磁盘根目录位于扇区19-32,用于存放文件的地方位于扇区33-2879。簇大小为512b,刚好一个扇区。

0

0×3 数据层分析

数据层分析简单来说就是是分析磁盘镜像中基于簇的数据信息。数据层包含了文件的真实内容。分析数据层的目的是在磁盘的簇信息中查找目标相关的数据线索。数据在不同的文件系统里存储在不同名称的单元结构中。

我们首先提取未分配空间内容至un.ls:

D:\Program\sleuthkit-win32-4.0.2\bin>blklsd:/image.dd > D:/un.ls

然后提取un.ls里面的ASCII字符串(也可以按需求选择其它格式字符串)。D:\Program\sleuthkit-win32-4.0.2\bin>strings-t d D:/un.ls > d:\str.str,对un.ls立面的字符串进行搜索,找到了Jimmy Jungle的相关内容:

0

发现数据内容Jimmy Jungle,其中第一个信息位于未分配空间区域的第2560个扇区。下面我们以地址2560为第一个线索进行分析。

根据前面fsstat数据信息得知,簇大小为512,用2612除去簇大小后得知数据位于第5到第6个簇的开头之间。所以“Jimmy Jungle”的相关数据块位于未分配空间中的第5个簇。下面使用blkcalc工具计算第5个簇的扇区位置。

0

计算出image.dd的第五个簇位于扇区的位置是38。

在原始dd镜像中提取38号数据单元的内容。下图使用命令blkcat,不加其它参数的话默认只显示1个簇内容。

D:\Program\sleuthkit-win32-4.0.2\bin>blkcat.exed:/image.dd 38

0

0×4 inode层分析

首先介绍一下文件系统的inode。对于系统来说,文件名只是inode号码便于识别的别称或者绰号。表面上,用户通过文件名,打开文件。实际上,系统内部这个过程分成三步:首先,系统找到这个文件名对应的inode号码;其次,通过inode号码,获取inode信息;最后,根据inode信息,找到文件数据所在的block,读出数据。

通过inode层我们能够了解到数据存储单元与文件属性信息的联系。

我们使用ifind工具查找数据区域扇区号对应的文件元数据信息的位置:

D:\Program\sleuthkit-win32-4.0.2\bin>ifind.exe-a -d 38 d:/image.dd

0

由以上命令得知,此文件的文件元数据信息位于第五个元数据结构单元。

下面我们使用istat工具来输出此文件的inode信息:

D:\Program\sleuthkit-win32-4.0.2\bin>istat.exed:/image.dd 5

0

0×5 文件层分析

文件层的分析主要是根据inode信息来收集文件的具体内容。

根据inode层所提供的信息得知此文件为一个后缀名为doc的文档,大小为20480字节,占用的扇区为33-72一共40扇区。占有的扇区包括如下

33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48
49 50 51 52 53 54 55 56
57 58 59 60 61 62 63 64
65 66 67 68 69 70 71 72

把此内容提取出来存为word文件。

D:\Program\sleuthkit-win32-4.0.2\bin>blkcat.exed:/image.dd 33 40 > d:/dd.doc

0

这样一个完整的文件就提取出来了。

0

至此,我们就根据得到的信息提取出了一份完整的文件 。

0×6 总结

通过以上的步骤,我们看到几个层次之间的线索共享关系,并通过各种关联的方法得到了最终想要的结果,除了上述的基于磁盘的取证外。对其他类型数据的取证技术也非常多,取证的思路也多种多样。这是一个最简单的磁盘数据分析例子,希望能够给大家对磁盘的取证分析带来一个系统化的分析和学习思路。目前电子取证技术发展越来越快,并且已经从原先的PC端取证延伸到了移动终端,在未来电子取证也将成为信息安全的一个重要分支领域,NSTRT也将在以后的技术分享中继续给大家介绍其他的取证技术。


原文发布时间为:2015-02-03

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
2月前
|
存储 数据采集 数据可视化
【C++】医院PACS医学图像存储和传输系统源码
图像后处理与重建 •MPR\CPR(三维多平面重建) •VRT(三维容积重建) •SSD(三维表面重建) •VE(虚拟内窥镜) •MIP(最大密度投影)、MinIP(最小密度投影) •CalSCore(心脏图像冠脉钙化积分)
31 3
|
4月前
|
存储 安全 数据安全/隐私保护
医学影像PACS系统:一种用于存储、管理和传输医学影像数据的系统
医学影像PACS系统:一种用于存储、管理和传输医学影像数据的系统
140 0
医学影像PACS系统:一种用于存储、管理和传输医学影像数据的系统
|
10月前
QPBOC与标准借贷记的脱机认证详细过程
QPBOC与标准借贷记的脱机认证详细过程
|
11月前
|
安全 物联网 测试技术
网络入侵调查的电子数据取证方法!
网络入侵调查的电子数据取证方法!
|
11月前
|
存储 Web App开发 安全
电子数据取证-搭建取证工作站
电子数据取证-搭建取证工作站
284 0
|
12月前
|
前端开发 BI C#
手术麻醉系统源码,实现监护仪、麻醉机、血气分析仪等设备输出数据自动采集
基于C# +前端框架:Winform+后端框架:WCF +数据库:sqlserver 开发的手术室麻醉临床信息系统源码,应用于医院手术室、麻醉科室的计算机软件系统。该系统针对整个围术期,对病人进行全程跟踪与信息管理,采用计算机和通信技术,实现监护仪、麻醉机、血气分析仪等设备输出数据自动采集,如实准确地反映患者生命体征参数变化,并实现信息高度共享,根据采集结果,综合其他患者数据,自动生成手术麻醉等相关医疗文书,把麻醉医生从繁重的单据记录中解放出来,从而有更多时间为手术顺利进行保驾护航。
手术麻醉系统源码,实现监护仪、麻醉机、血气分析仪等设备输出数据自动采集
|
传感器 安全 生物认证
|
存储 运维 监控
一文详尽如何破解车联网数据采集存储难题
Lindorm车联网数据存储解决方案
2731 0
一文详尽如何破解车联网数据采集存储难题
|
存储 安全 Linux
存储安全 系统的最后一道防线
我们都看到过一些大公司的系统被黑客入侵的报道,一般来说,黑客都是从获得root访问权开始的,一旦获得root访问权,可以说你的任何文件,只要入侵者想要,他们都是可以取走的,这就引出了两个问题: · 数据路径应该变得更安全点吗? · 如果数据路径应该变得更安全,我们该怎么做呢? 数据路径应该变得更安全点吗? 看起来似乎有点疯了,人们告诉我没有存储安全需求,需要的是网络和操作系统安全,保护文件系统和数据路径并不重要,他们的理由是存储安全太难以管理了,当然,我问他们究竟是怎么想的,他们并没有给我直接的答复。
1001 0