WeSeong 登录
← 返回文章列表
磁盘与文件

ZIP 结构, DISK

ZIP 结构, DISK

一、概述

ZIP 了解文件结构。 Header系统的结构如何,每个组件的作用是什么 Header我们来看看信息如何分类。 DISK内存可以分为主内存和辅助内存。 DISK工作原理和结构 (MBR, VBR)我们来快速查看一下,了解它在真实计算机上如何运作。 HDD和 SDD了解读取、写入、删除和复制操作之间的差异,以及它们与速度的关系。 MBR, VBR HxD通过 要分析 (本教程在下一篇文章中..) FTK Imager通过 Image dump 我们要去做这项工作。



Ⅱ. ZIP 结构

ZIP 文件结构分析

这里有一个博客,详细介绍了 ZIP 文件结构。我们建议您参阅一下。


ZIP 文件结构很简单。基本上, Local File Header, Central Directory File Header对于每个压缩文件都存在一个文件名,并在最后 End of Central Directory Record Header结束。从现在开始,每个 Header我们来看看组件。


  1. 本地文件头


Local File Header结构如下,每个详细部分都在上面的博客中以橙色进行描述。 Signature或 Version, Flags 等等都有其固定的字节。但是,绿色 File Name, Extra Field, 对于数据而言,这种变化是不可避免的,例如,对于记事本而言,标题的长度和内容的长度都不同。


  1. 中央目录文件头


Central Directory File Header 以这种方式结构化,在 Local File Header 中显示更广泛的数据信息。其中包括更详细的信息,例如压缩大小、文件描述、版本和修改日期。


  1. 中央目录头部结束


以上 Local File Header或 Central Directory File Header可能有多个,具体取决于压缩文件的数量,但 End of Central Directory Header正如名称所示,由于压缩的 ZIP 文件包含所有信息, 一个在最后 Header只有一个。所以如果你看看最后的 0xB0、0xC0 部分,整个 Central Directory数量或大小 ZIP 它包含诸如文件描述等信息。


我们已经自动编码,将 ZIP 文件从 Python 导入到 Binary,并提取了每个 Header 和 Header 的属性。我们没有发布它,因为它不是一个优秀的代码,而是因为我们认为实际尝试它是学习结构的一个很好的方法。使用我们提取的 16 位值,我们可以更改修改日期、更改标题、更改内容等。然而,这是一个有趣的操作。


请注意,这种压缩文件结构几乎用于所有常见的文件格式。您可能已经见过用于韩国文件的 hwpx 扩展名或用于 Excel 文件的 xlsx 扩展名。这些都是压缩文件格式。



Ⅲ. 磁盘

磁盘 (Disk)类型包括 主内存和 辅助存储设备有的。以前,数据是 顺序然后,要回到中间数据上找东西真的很难。现代磁盘还有一个非永久性的特点。 'Random Access Method of Accounting Control' 我们使用技术来改进此功能。主内存设备通常是 RAM(Random Access Memory)被称为 易挥发 数据保存它。 RAM我在之前的文章中详细解释了这一点。不过,闪存(USB例如 RAM这不是一个易变量。速度是极大影响计算机性能的因素之一。二级存储器使我们可以保留已安装的程序和创建的文档,即使我们经常升级计算机。 非永久性存储设备这是主内存 (RAM)。RAM)不同于 非易失性数据它存储数据,但速度较慢,二级存储设备通常被称为磁盘。


还有一种叫做“盘”的东西,它是 Disk这不一样。 音频 CD, CD-ROM(Read Only Memory), DVD-ROM(Read Only Memory), DVD-RAM 等等 它指的是光学媒体。有些是只读的,可以随时从计算机中移除,并且可以存储内容(如音乐、视频)或多次重新录制。 Disc有的。 CD如果你去思考一下,就会更容易理解。 VMware正如在处理网络时需要一个 LAN 卡接口一样,对于磁盘也需要一个接口。 IDE(Integrated Drive Electronics) 或者 ATA(Advanced Technology Attachment)但在并行的意义上 PATA(Parallel 它被命名为 Advanced Technology Attachment).


PATA 模式


SATA 模式

PATA这正是我们很久以前所做的方式,但如今这就是我们的做法。 IDE 提高了速度 SATA(Serial Advanced Technology Attachment)使用 . SATA1例如, 每秒 150mb, SATA2在这种情况下,其速度为每秒 300mb。 SATA2 之后, USB就像集线器一样,现在可以将多个硬盘连接到单个端口。 USB PC在不关闭设备的情况下连接设备,就好像您正在使用待机模式一样 热插拔 还添加了一些功能。


※ SCSI(Small Computer System Interface):银行业中还使用一种磁盘接口。它比普通硬盘速度要快得多,每秒可传输 320 MB 的数据。它用于服务器或工作站(性能类似于小型计算机的高性能计算机,Workstation - 比一般的高性能计算机更强大 PC)并需要一张扩展卡。它后来被 SAS(Serial Attached SCSI - 用于服务器等大型计算机) 所取代。


DISK 已启动,通常情况下,进程的情况如下。


打开计算机时,您可能会听到"哔"的声音。这是POST(Power 在 Self Test) 正在读取硬件设备,以检查电源是否正常供应。整体硬件检查完成后,我们看到BIOS 界面。如果您之前对计算机进行了格式化,则可能在此处更改了设置。BIOS 允许您管理硬件设置,并具有部分 存储空间(ROM) 。格式化时,您可以选择启动盘或超频。


下一篇 MBR(Master Boot Record)对于系统的运行非常重要。如果它被损坏,系统将无法启动。 BIOS当系统读取一个可启动设备时, MBR这是因为正在读取引导扇区。如果将磁盘转换为 512 字节,您首先会看到扇区 0 的内容。 主分区、次级分区和共 4 个分区每个分区包含 16 个字节的信息,范围为每个分区 446 字节至 510 字节,减去最后两个字节。



Partition Table 详细分类

请注意,扇区(Sector) 是磁盘结构的基本单位,其中最后 4 个字节的信息表示特定分区中的扇区总数,而非整个磁盘。多个扇区组成的集合称为簇(Cluster) 。簇越大,速度越快。这是因为在一次中读取簇中的数据自然比在一次中读取扇区中的数据更快。但是,簇越大,浪费的空间就越多。


如果只看这段文字,可能会很难理解,但如果你看一下上面的图片,就会更容易理解。 MBR最多为 446 字节 Boot Code然后, Partition Table它们有四个,大小从 446 字节到 510 字节不等。最后一个是 2 个字节。 Signature也就是说。 MBR已记录的分区Partition)这是可以作为主分区启动的分区列表。一个磁盘可能有多个分区。在首次安装磁盘时,您需要执行分区操作。格式化时也可以看到此信息。您可能将 C 磁盘和 D 磁盘分割以用于备份,这就是分区的作用。当然,两个驱动器都可能是独立的磁盘。


※ MBR 很难恢复,因为当引导代码损坏时无法启动,且没有备份。


在 HDD(Hard Disk Drive)我以前经常使用它,但现在 SSD(Solid State Drive)我会用它的。 HDD如上所述 MBR 此方法用于 SSD GPT(GUID Partition Table) 此方法已被使用。 GPT 在该方法的情况下 MBR最大的区别在于,虽然只能创建四个分区,但分区数量没有限制,容量上限为 2TB。 MBR 与传统方法相比,没有任何限制。也就是说, GPT它在分区管理方面提供了更大的便利性和优势。


※ 逻辑磁盘和 物理磁盘是概念,其中逻辑磁盘指分区磁盘,物理磁盘指实际的 HDD或 SDD硬件磁盘。


MBR, GPT 会在分区上工作,然后才会处理文件系统,如上图所示,VBR(Volume Boot Record) 通过 Master File Table 读取和写入文件。它管理了每个分区上数据的存储位置,实际数据存储在 Data Area 中,并通过映射到 Master File Table 中进行管理。由于存在备份,恢复非常容易,但如果系统无法启动,则可能会很困难。当您使用 Windows 时,被要求选择格式化方法时,可以看到此 VBR。FAT, NTFS 是此文件系统的一部分。FAT 的最大文件大小为 4GB。 它无法克服,尽管 32 位元有长度限制,但 NTFS 通过消除了 4GB 的限制并全面改进,克服了 FAT 的缺点,成为使用最广泛的文件系统。


当然,FAT 也有一个改进版本,FAT32 此外,FAT32 还记录了在VBR 之后保留的区域(如引导扇区、文件系统基本信息等),以及分配给FAT1 和FAT2 的文件(与Mirror 相关,结构相同)。然后,MFT (包含文件信息的表)出现。


NTFS(Next Technology File System)和 FAT(File Allocation Table) Master File Table它负责读取、写入、保存和删除文件。通常,在创建文件时, MBR访问它以获取有关分区的信息 VBR(NTFS, FAT)访问它。 VBR在 MFT(Master File Table)基于计算 Data Area 会搜索空间来存储新文件,在 MFT 中保存有关 Data Area 空间的信息,然后实际存储文件。在复制或移动文件时,速度有明显的差异,


复制

移动

同一分区

较慢

快速

其他分区

较慢

较慢

如果文件很小,NTFS将在Data中存储文件内容,而不保存到Area,并将其写入MFT.


这种差异的原因是



上面的图像应该能更好地解释这一点。 在同一个分区内对于复制 Data Area复制新文件 MFT您需要更新信息(文件名、日期、大小、存储位置等)。但是,对于移动文件, MFT因为只需要修改信息,所以速度更快。 其他分区在复制过程中,它与在同一分区内的复制过程类似。 MFT并对其进行修改 Data Area速度慢是因为需要重写文件信息。转移也不可避免。但总的来说, 删除


所以 MTF的 Data Area 仅删除链接信息所以速度非常快。如果我们覆盖它,会发生什么情况?

覆盖不是常用的恢复方法,因为它可能会污染现有文件。 Data Area当您修改区域时 MFT的 Header 信息已损坏。也就是说, MFT文件中的信息将被覆盖数据中的信息所替换,因此旧文件中的信息将不再可用。 HDD和 SSD不过,还是有所不同。 HDD可重写,但 SSD通常是不允许的。 Trim 技术 因为过去,我们利用了这个事实,即无法通过覆盖来恢复数据。 HDD他们故意覆盖了想要隐藏的数据,使其难以恢复。然而, 随机运作为 Trim 这项技术是 管理不经常使用的文件数据实际上,在覆盖时,只需要将其修改为 0 和 1 即可,但在这种情况下,现有数据会被视为已删除。 Trim一旦它被删除MFT以及数据 由于页面被访问时链接就立即断开,而且速度非常快,因此很难覆盖链接。


※ 在 XP 中,存在着垃圾收集 (Garbage Collection),但在 Windows 7 中引入了 Trim。


※ 复制文件时,创建时间可能比修改时间慢。这是因为这些文件是从互联网或USB通过中检索的,这意味着它们是在不同磁盘之间移动的,而不是在不同分区之间。对于从互联网检索的文件,它被报告为 'Zone.Identifier' (CMD 当以 dir 形式查询时)。有关更多信息,请参阅USB。在连接到标志和播放功能并安装驱动程序后, 将立即被检测到。


与速度有关的另一个方面是 碎片化是一个概念 (Fragmetation) .


如上图所示 HDD已经将文件数据分割并存储了下来。因此,要加载文件, 链接(如果你学习了一个编程语言 Linked List 这很容易理解。) 我必须逐一加载和读取每个文件中的数据。由于一次读取一个文件比分散读取要快得多,所以我习惯使用 磁盘碎片整理它会做很多工作。但如今,这并不必要,因为它是按顺序保存文件,而不是将其分割。另一个与速度有关的概念是 DISK Nand 表格和 NOR 有一个表格。 Nand是半导体中的一个电池 串行由于它是按顺序写入的,所以它会按顺序读取数据。 NOR它的速度比另外两种慢一些,但可以很容易地增加容量,无需单独记住单元的地址,而且也很容易进行写入。 速度很快。 Nand 一种以盘状形式的磁盘 USB或 SSD有的。 NOR是一个细胞 并行上面写着"随机访问"。通过 读取速度快,但写入速度慢,因为它一次只记录一个单元。它成本高,主要用于移动电话。 移动设备它的使用频率更高。对于移动设备而言,读取大量数据的情况要多于写入数据的情况。


※ 汽车的发动机 RPM 就像概念一样,磁盘 RPM(物理旋转计数)速度越快越好。典型的硬盘的转速为 7,200 RPM,而移动硬盘和笔记本电脑驱动器的转速稍慢一些。



第四部分. DISK相关实验室

第一个练习是 回收磁盘dump 只是对上述所有磁盘结构的表示。 Image 以这种形式 Imager 该程序使得可以读取数据。从法律上讲,如果原始数据被篡改,就不能作为证据使用,但在实际中,一旦进行取证,原始数据就无法再使用。因此,取证界将其分发给各个组织。 FTK Imager 由于只允许运行程序,因此我们将使用此程序来备份磁盘。

与该程序相关的部分如下:

FTK® Imager - Exterro

请参阅此网页。


当 FTK Imager 执行时,


您将看到此屏幕。假设 USB 已连接,我们将清除 USB。


按 Create Disk Image 以


会询问要使用哪个驱动器。Logical Drive 指向一个分区,而Image File 指向一个现有的磁盘备份映像,所以我将跳过这些选项,选择Physical Drive 并选择USB.


选择可实际备份的磁盘设备 Finish按下


这里, Add通过指定了图像类型。最常用的方法是 E01,它使用 Encase。这部分需要多加研究一下。


如果您单击 并继续,


系统会提示您输入保存的位置和文件名。 Image Fragment Size 表示如果将图像文件分成多个部分保存,则图像文件将以此大小进行分割。 Compression 是压缩级别。数值越接近 9,压缩程度越高,文件大小越小,但创建图像文件的速度可能会降低。


按下 和 Start 将启动图像文件创建过程。



评论

学习 DISK 的时候,我真的感觉自己像是撞上了墙。但是当我为多次练习和复习写下这篇文章时,我觉得结构逐渐进入了我的脑海。在下一篇文章中,我计划更多地复习与 DISK 相关的练习,并尝试写一些关于它们的内容!