FAT32分区下的文件数据定位及删除后的恢复
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FAT32分区下图片文件及文件夹下PDF文件的定位及数据恢复
10级信息管理系司法信息安全方向12号王立鹏
利用DiskCreator工具创建磁盘的步骤:
1)选择创建虚拟磁盘文件的位置为C盘;如下图1所示:
图1
2)创建大小为1024M的虚拟磁盘;如下图2所示:
图2
3)DiskLoader工具装载虚拟磁盘(Browse选择创建的虚拟磁盘文件FATnt后选择Load InsDisk);如下图3—4所示:
图3
图4
4)安装完成;如下图5所示:
图5
对虚拟磁盘分区的步骤:
1)右击我的电脑,选择“管理”;如下图6所示:
图6
2)在“计算机管理”中选择“磁盘管理”;如下图7所示:
图7
3)对磁盘一(如下图8所示)进行分区:
图8
4)建立主分区的过程如下右击未指派的1G磁盘,选择新建磁盘分区;如下图9——14所示:
图9
图10
图11
图12
图13
图14
主磁盘分区建好如图15所示:
图15
5)建立扩展分区过程如下,右击未指派的842MB选框后,选择新建磁盘分区,再选择扩展磁盘分区;过程如下图16——18所示:
图16
图17
图18
扩展分区建好后如下图19所示:
图19
6)创建逻辑驱动器,右击扩展分区(图19中绿框),选择新建磁盘分区;具体过程如下图20——26所示:
图20
图22
图23
图24
图26
按照上述方法创建好J逻辑驱动器;如下图27所示:
图27
上述过程为创建虚拟磁盘并且创建好分区的过程
创建的虚拟磁盘,大小为1G,一个NTFS的主分区,扩展分区中一个FAT32逻辑驱动器I,一个NTSF逻辑驱动器J,如下图28所示:
图28
在FAT32的分区中,也就是逻辑盘I中建立一个文件夹,放一个PDF文件,在I盘根下放两张图片,如下图29——30所示:
图29
图30
我们以删除图片Lighthouse文件以及文件夹下的南非文件为例子,来讲述如何进行文件的定位,以及删除文件后,相关扇区的变化,还有如何恢复数据。删除前的图片文件Lighthouse以及文件夹下南非文件的内容分别如下图31——32所示:
图31
图32
文件以及文件夹删除以前,分别对MBR(主引导记录),EBR1(扩展引导记录),FAT32分区的DBR (DOS引导记录),FAT1(文件分配表),FAT2,以及数据区的文件目录项进行定位分析。WinHex打开硬盘一,下图扇区就是MBR(C/H/S地址的0柱面0磁头1扇区),如下图33所示:
图33
上图33阴影部分的66字节为DPT(Disk Partition Table,硬盘分区表,占64字节)和结束标志”55 AA”
MBR中分区表的每16字节组成的分区表项分析
字节偏移字段长度值字段名和定义
0X000001BE 1字节0X00 引导标志(Boot Indicator,指明该分区是否为活动分区0X000001BF1字节0X01 开始磁头(Starting Head)
0X000001C06位0X01起始扇区(Starting sector),只用了0-5位,第6,7位被开始柱面字段使
用。
0X000001C110位0X00起始柱面(Starting Cylinder),共占10位,最大值为1023 0X000001C21字节0X07 系统ID(System ID)定义分区类型
0X000001C31字节0XFE 结束磁头(Ending Head)
0X000001C46位0X3F 结束扇区(Ending Sector)只使用0—5位,第6,7位被结束柱面字段使
用
0X000001C510位0X19 结束柱面(Starting Cylinder),共占10位,最大值为1023
0X000001C61DWORD(双字) 0X0000003F 相对扇区数(Relative Sectors),指该磁盘开始到该分区开始之间的位移
量,以扇区来表示
0X000001CA1DWORD(双字) 0X00065F5B 总扇区数(Total Sectors),指该分区中扇区总数
分析MBR扇区的分区表项,偏移为000001D2的一个字节为(05H),表示扩展分区,它的起始
扇区为偏移000001D6开始的4个字节(9A5F0600H),计算EBR1的位置;跳到EBR1如下图34
所示:
图34
计算出来EBR1位置在417690扇区。下面跳到EBR1如下图35所示:
图35
扩展分区中的每个逻辑驱动器的分区信息都存在与类似于MBR的扩展引导记录(EBR, Extended Boot Record)中,EBR中分区表的第一项描述第一个逻辑驱动器,第二项指向下一个逻辑驱动器的EBR,如果不存在下一个逻辑驱动器,第二项就不需要。从上图35阴影部分第一个分区表项可以看出驱动器类型,偏移0CBF35C2 (0BH)看出分区格式为FAT32分区. 偏移为0CBF35C6开始的4个字节(3F000000H)为相对位置,即63扇区,我们计算DBR的位置:417690+63=417753扇区,跳到DBR扇区,如下图36所示:
图36
注:大于一个字节的数值被以低字节在前的格式存储,例如:相对扇区字段值为0X3F000000
的
低字节在前表示为0X0000003F.转换为十进制为63.
扇区开始的3字节(EB5890H)为FAT32的DBR的JMP指令,偏移0CBFB20B开始的2字节(0002H)表示每扇区的字节数为512字节。偏移0CBFB20D的1个字节(08H)表示每簇的扇区数为一簇8扇区。0CBFB20E开始的2字节(2600H)表示DOS保留扇区数为38扇区。0CBFB210的一个字节(02H)表示FAT的个数为2. OCBFB224开始的4个字节(C1020000H)表示每FAT扇区数为705扇区。
我们就可以计算FAT1起始扇区为DBR所在扇区加保留扇区数:417753+38=417791。FAT2的起始扇区为FAT1起始扇区加FAT的大小:417791+705=418496。FAT的根目录放在数据区,数据区起始扇区为FAT2起始扇区加FAT大小:418496+705=419201。下表为DBR相关参数分析:
偏移实际值(十
六进制) 实际值
(十进
制)
长度
(字节)
含义
0CBFB200 EB5890 3 JMP指令,跳转到引导程序,后随一个空指令90
0CBFB20B 0002 512 2 每扇区字节数,记录扇区大小
0CBFB20D 08 8 1 每簇扇区数,记录簇大小,即多少个扇区组成一个簇0CBFB20E 2600 38 2 DOS保留扇区,一般为32
0CBFB210 02 2 1 FAT表个数,一般为二
0CBFB220 AE070B00 722862 4 该分区的扇区总数,即分区大小
0CBFB224 C1020000 705 4 每FAT扇区数,FAT32下每FAT表占用的扇区数
下图37为FAT1起始扇区:
FAT32用32为也就是4个字节表示一个簇。数据区的簇编号从2号簇开始,在FAT表中前0,1簇是与系统相关的。
图37