Partitions/File Systems/Carving
最后更新于
最后更新于
硬盘或SSD磁盘可以包含不同的分区,目的是在物理上分隔数据。 磁盘的最小单元是扇区(通常由512B组成)。因此,每个分区的大小都需要是该大小的倍数。
它分配在磁盘的第一个扇区中,位于引导代码的446B之后。这个扇区对于指示PC应该从哪里挂载分区很重要。 它允许最多4个分区(最多只能有1个是活动的/可引导的)。但是,如果您需要更多分区,可以使用扩展分区。这个第一个扇区的最后一个字节是引导记录签名0x55AA。只能标记一个分区为活动的。 MBR允许最大2.2TB。
从MBR的字节440到443,您可以找到Windows磁盘签名(如果使用Windows)。硬盘的逻辑驱动器字母取决于Windows磁盘签名。更改此签名可能会阻止Windows引导(工具:Active Disk Editor)。
格式
分区记录格式
要在Linux中挂载MBR,首先需要获取起始偏移量(您可以使用fdisk
和p
命令)
然后使用以下代码
LBA(逻辑块寻址)
逻辑块寻址(LBA)是一种常用的方案,用于指定存储在计算机存储设备上的数据块的位置,通常是硬盘驱动器等二级存储系统。LBA是一种特别简单的线性寻址方案;通过整数索引来定位块,第一个块为LBA 0,第二个为LBA 1,依此类推。
GUID分区表,简称GPT,因其与MBR(主引导记录)相比增强的功能而备受青睐。GPT以其全局唯一标识符为分区而脱颖而出,具有以下几个显著特点:
位置和大小:GPT和MBR都从扇区0开始。但是,GPT使用64位,与MBR的32位形成对比。
分区限制:GPT在Windows系统上支持最多128个分区,并可容纳高达9.4ZB的数据。
分区名称:提供了使用最多36个Unicode字符命名分区的功能。
数据弹性和恢复:
冗余:与MBR不同,GPT不将分区和引导数据限制在单一位置。它在整个磁盘上复制这些数据,增强数据完整性和弹性。
循环冗余校验(CRC):GPT采用CRC来确保数据完整性。它积极监视数据损坏,一旦检测到,GPT会尝试从另一个磁盘位置恢复损坏的数据。
保护性MBR(LBA0):
GPT通过保护性MBR实现向后兼容性。此功能位于传统MBR空间中,但旨在防止旧的基于MBR的实用程序错误地覆盖GPT磁盘,从而保护GPT格式化磁盘上的数据完整性。
混合MBR(LBA 0 + GPT)
在支持通过BIOS进行基于GPT的引导的操作系统中,第一个扇区也可能仍然用于存储引导加载程序代码的第一阶段,但修改以识别GPT分区。 MBR中的引导加载程序不得假定扇区大小为512字节。
分区表头(LBA 1)
分区表头定义了磁盘上可用的块。它还定义了组成分区表的分区条目的数量和大小(表中的偏移量80和84)。
分区条目(LBA 2–33)
分区类型
更多分区类型请参阅https://en.wikipedia.org/wiki/GUID_Partition_Table
在使用ArsenalImageMounter挂载取证镜像后,您可以使用Windows工具Active Disk Editor检查第一个扇区。在下图中检测到了一个MBR在扇区0并进行了解释:
如果是GPT表而不是MBR,则应在扇区1中出现签名_EFI PART_(在上图中为空)。
FAT12/16: MSDOS, WIN95/98/NT/200
FAT32: 95/2000/XP/2003/VISTA/7/8/10
ExFAT: 2008/2012/2016/VISTA/7/8/10
NTFS: XP/2003/2008/2012/VISTA/7/8/10
ReFS: 2012/2016
FAT (文件分配表) 文件系统围绕其核心组件设计,即位于卷开头的文件分配表。该系统通过维护两份副本的表来保护数据,即使其中一份损坏,也能确保数据完整性。表和根文件夹必须位于固定位置,对系统的启动过程至关重要。
文件系统的基本存储单元是一个簇,通常为512B,包含多个扇区。FAT已经通过多个版本的演变:
FAT12,支持12位簇地址,处理多达4078个簇(UNIX为4084个)。
FAT16,升级到16位地址,从而容纳多达65,517个簇。
FAT32,进一步使用32位地址,允许每个卷有惊人的268,435,456个簇。
FAT版本之间的一个重要限制是4GB的最大文件大小,由用于文件大小存储的32位字段所施加。
根目录的关键组件,特别是对于FAT12和FAT16,包括:
文件/文件夹名称(最多8个字符)
属性
创建、修改和最后访问日期
FAT表地址(指示文件的起始簇)
文件大小
Ext2是不记录日志分区的最常见文件系统(不经常更改的分区,如引导分区)。Ext3/4是记录日志的,通常用于其余分区。
一些文件包含元数据。这些信息是关于文件内容的,有时可能会对分析人员感兴趣,因为根据文件类型的不同,它可能包含信息如下:
标题
使用的MS Office版本
作者
创建和最后修改日期
相机型号
GPS坐标
图像信息
您可以使用像exiftool和Metadiver这样的工具来获取文件的元数据。
正如之前所见,文件“删除”后仍然保存在几个地方。这是因为通常从文件系统中删除文件只是将其标记为已删除,但数据并未被触及。然后,可以检查文件的注册表(如MFT)并找到已删除的文件。
此外,操作系统通常保存有关文件系统更改和备份的大量信息,因此可以尝试使用它们来恢复文件或尽可能多地获取信息。
文件切割是一种尝试在大量数据中查找文件的技术。此类工具的工作方式有3种主要方式:基于文件类型的头部和尾部,基于文件类型的结构,以及基于内容本身。
请注意,此技术无法用于检索分段的文件。如果文件未存储在连续的扇区中,则此技术将无法找到它,或者至少无法找到部分文件。
有几种工具可用于文件切割,指示您要搜索的文件类型
数据流切割类似于文件切割,但不是寻找完整文件,而是寻找有趣的信息片段。 例如,与寻找包含记录的URL的完整文件不同,此技术将搜索URL。
显然,有方法可以**“安全地”删除文件和有关它们的部分日志**。例如,可以多次覆盖文件内容以垃圾数据,然后删除有关文件的**$MFT和$LOGFILE的日志,并删除卷影复制**。 您可能会注意到,即使执行了该操作,仍可能记录文件存在的其他部分,这是取证专业人员工作的一部分,是要找到它们。
iHackLabs Certified Digital Forensics Windows
偏移量 | 长度 | 项目 |
---|---|---|
偏移量 | 长度 | 项目 |
---|---|---|
偏移量 | 长度 | 内容 |
---|---|---|
GUID分区条目格式 | ||
---|---|---|