用Winhex手工定位NTFS文件系统下的文件
- 格式:doc
- 大小:2.11 MB
- 文档页数:6
基于Winhex的U盘文件碎片化的数据恢复研究U盘是一种常见的便携式存储设备,由于其体积小、易携带等特点,广泛应用于文件传输和存储。
在长期使用过程中,由于频繁的写入和删除操作,U盘中的文件会发生碎片化现象,导致文件存储空间的不连续,进而影响数据的恢复和读取速度。
本文将基于Winhex软件,对U盘文件碎片化的数据恢复进行研究。
我们需要了解Winhex软件的主要功能和特点。
Winhex是一款功能强大的数据恢复工具,可以用于文件的编辑、数据恢复、数据安全删除等操作。
其具有直观的用户界面,且支持多种文件系统格式,包括FAT、NTFS、EXT等。
使用Winhex进行文件碎片化数据恢复的主要步骤如下:1. 打开Winhex软件,选择要进行数据恢复的U盘,并以只读模式打开。
只读模式可以保证在数据恢复过程中不会进一步破坏文件系统。
2. 在Winhex软件中,可以通过“搜索”功能来查找被删除或者丢失的文件。
在搜索之前,可以设置搜索的选项,包括搜索的范围、文件类型、关键字等。
3. 当找到目标文件的碎片时,可以通过Winhex软件进行重组和合并。
Winhex的“合并”功能可以将找到的碎片文件进行重新连接,从而恢复原始文件。
4. 在进行数据恢复之前,可以使用Winhex的“预览”功能来查看文件的内容,以确认文件是否完整和正确。
5. 通过Winhex软件将恢复的文件保存到安全的位置,以防止进一步的数据丢失。
通过以上步骤,我们可以利用Winhex软件对U盘中的碎片化文件进行恢复。
需要注意的是,在进行数据恢复之前,应该停止对U盘的写入操作,以避免进一步的文件碎片化和数据覆盖。
除了Winhex软件,还有一些其他的数据恢复工具也可以用于U盘文件碎片化的数据恢复,如Recuva、TestDisk等。
这些软件可以提供更多的搜索和恢复选项,以满足不同用户的需求。
U盘文件碎片化的数据恢复是一个复杂且耗时的过程,需要借助专业的软件工具进行操作。
一、初步应用——双分区恢复实例及分析(一)、现场重现:提示,切勿随意使用自己的硬盘进行试验,切记试验前保存重要数据。
对于移动硬盘,损坏往往发生于硬盘传输数据中断电。
现在我将一个有问题的移动硬盘接到电脑上,在“计算机管理”-->“磁盘工具”中我们可以看到这个未被初始化的磁盘显示为黑色(打开磁盘工具时它会提示你要初始化,不理它,点“取消”),在“计算机”中也找不到这个磁盘。
(二)、手动修复:(阅读有困难的朋友可以先读完第三节再回过头来看这一节,本节的另一个作用是让新手对Winhex界面有一个初步了解)1、打开Winhex-->菜单栏-->选择“工具”-->打开磁盘(F9)-->选择要修复的硬盘,这里是HD2。
2、打开之后图中显示从0000H-->01ffH(16进制)之间的数据全部为0。
现在我从一个运转良好的硬盘分区表中将0000H-->01bdH之间的数据复制并粘贴到损坏硬盘的相应位置。
操作步骤为:在良好硬盘中拉选0000-->01bd之间的区块,被选中区块呈亮蓝色;复制选块;接下来在损坏硬盘中拉选相应区域,将光标定位至0000;右键-->编辑-->粘贴板数据-->写入。
将01fe,01ff填写为55AA,到这里一定保存。
点击黄色区域的图标并转移至63号扇区菜单“视图”-->模板管理(Alt+F12)-->NTFS引导扇区。
打开如下图,并记录黄色方框的两个数值(63和63777986)63+63777986+1=63778050,跳转至63778050扇区。
稍微向下滚动一点,看到那个粉色框标识出的55AA了嘛?往前找到黄色框的部分,显示为3F 00 00 00,将其进行反向排列,变为00 00 00 3F于是3F(十六进制)=63(十进制)——我们称这个数为相对偏移量。
接下来跳转至63778050+63=63778113扇区,我们又发现了一个EB开头的扇区再次选择菜单“视图”-->模板管理(Alt+F12)-->主引导记录NTFS引导扇区。
NTFS文件系统NTFS(New Technology File System,新技术文件系统),是以MFT(Master File Table,主文件表或主索引记录)为核心,将整个分区的系统文件和用户文件有机地组织起来的文件系统。
NTFS最基本的原则:·磁盘上任何对象包括目录都是一种文件,都使用文件记录进行管理。
·所有与文件相关的项目,包括数据都被认为是属性。
·属性分常驻(在记录中)和非常驻两种,非常驻的大文件夹使用B+树结构进行管理。
·簇是NTFS最小的基本单位,一个1字节的文件也要占用一簇的空间。
·流是NTFS最基本的存储单元,是文件属性和属性值的集合。
●MFT文件◇MFT的位置和作用:MFT文件和它的备份,位于NTFS分区中部,前后都是数据区,能更好地受到保护。
与FAT 系统先放文件分配表,后接数据区的做法不同。
XP系统的NTFS分区,大致布局如下图:分区所有的文件,其相关的文件信息都保存在MFT中。
小于1K的小文件(目录),其整个内容都保存在MFT中。
大于1K的大文件(目录),只有它的起始信息保存在MFT中。
在NTFS中,文件通过主文件表MFT定位。
MFT是组织、架构NTFS文件系统最主要的数据库文件,对NTFS分区的性能有着至关重要的影响。
◇ID编号(MFT Entry Value,文件号):分区中的所有文件和目录(包括MFT文件自身),都被系统ID编号(编号0为MFT文件),并将它们的各类属性、起始信息或全部内容,以文件记录的形式,保存在MFT中。
分区高级格式化成NTFS文件系统时,首先建立了一个主文件表MFT。
在MFT文件中,会预先建立16个重要的文件(MFT记录的ID编号固定为0-15)和8个保留文件(MFT记录的ID编号固定为16-23),这24个文件是被称为元文件(Metafiles)或元数据(metadata)的系统文件(具体内容见后面),供系统本身组织、架构文件系统使用。
NTFS文件系统结构分析在NTFS文件系统中,文件存取是按簇进行分配,一个簇必需是物理扇区的整数倍,而且总是2的整数次方。
NTFS文件系统并不去关心什么是扇区,也不会去关心扇区到底有多大(如是不是512字节),而簇大小在使用格式化程序时则会由格式化程序根据卷大小自动的进行分配。
文件通过主文件表(MFT)来确定其在磁盘上的存储位置。
主文件表是一个对应的数据库,由一系列的文件记录组成--卷中每一个文件都有一个文件记录(对于大型文件还可能有多个记录与之相对应)。
主文件表本身也有它自己的文件记录。
NTFS卷上的每个文件都有一个64位(bit)称为文件引用号(File Reference Number,也称文件索引号)的唯一标识。
文件引用号由两部分组成:一是文件号,二是文件顺序号。
文件号为48位,对应于该文件在MFT中的位置。
文件顺序号随着每次文件记录的重用而增加,这是为NTFS进行内部一致性检查而设计的。
NTFS使用逻辑簇号(Logical Cluster Number,LCN)和虚拟簇号(Virtual Cluster Number,VCN)来进行簇的定位。
LCN是对整个卷中所有的簇从头到尾所进行的简单编号。
卷因子乘以LCN,NTFS就能够得到卷上的物理字节偏移量,从而得到物理磁盘地址。
VCN则是对属于特定文件的簇从头到尾进行编号,以便于引用文件中的数据。
VCN可以映射成LCN,而不必要求在物理上连续。
NTFS的目录只是一个简单的文件名和文件引用号的索引,如果目录的属性列表小于一个记录的长度,那么该目录的所有信息都存储在主文件表的记录中,对于大于记录的目录则使用B+树进行管理。
主文件表中的基本文件记录中有一个指针指向一个存储非常驻索引缓冲--包括该目录下所有下一级子目录和文件的外部簇,而B+树结构便于大型目录中文件和子目录的快速查找。
主文件表中的基本文件记录中有一个指针指向一个存储非常驻索引缓冲--包括该目录下所有下一级子目录和文件的外部簇,而B+树结构便于大型目录中文件和子目录的快速查找。
NTFS文件解析系统的简单分析正如我们所知道的,目前主流anti-rootkit检测隐藏文件主要有两种方法,一种是文件系统层的检测(像IceSword自己构造irp包发到文件系统驱动),另一种就是磁盘级别的低级检测,直接对磁盘的数据进行分析,比如SnipeSword、filereg和unhooker.最近对第二种方法的一部分(及NTFS文件系统的解析)做了一些学习,于是就写点学习的东西与大家分享,其中有很多错误和不足希望大牛们指出。
(1)准备工作――获取分区的一些基本参数我们可以用CreateFile打开某个盘,读取偏移为0的扇区的数据。
具体的数据结构为:typedef struct tag_NTFSBPB{BYTE bJmp[3];//跳转指令BYTE bNTFlags[4]; // 文件系统NTFS的为"NTFS"BYTE bReserve1[4]; //一般为四个空格WORD wBytePerSector;//每扇区字节数BYTE bSectorPerCluster//;每簇扇区数WORD wReserveSectors;//保留扇区数BYTE bFatNum; // 总是0WORD wRootDirNum; //总是0WORD wSectorOfParti; //总是0BYTE bMedium;//WORD wSectorPerFat; //总是0WORD wSectorPerTrack;//WORD wHeadNum;//DWORD dwHideSector;//DWORD dwSectoOfParti; //总是0BYTE bDeviceFlag;//BYTE bReserve2;//WORD wReserve3;//ULONGLONG ullSectorsOfParti; //扇区总数ULONGLONG ullMFTAddr;//$MFT的起始逻辑簇号ULONGLONG ullMFTMirrAddr;// $MFT的起始逻辑簇号BYTE bClusterPerFile;//BYTE bReserve4[3];//DWORD dwClusterPerINDX;//BYTE bSerialID[8];//} NTFSBPB, *LPNTFSBPB;其中最重要的应该就是通过ullMFTAddr获得$MFT的起始逻辑簇号进而找到根图(1)目录的位置在进行分析。
基于NTFS下数据恢复技术研究第一章前言随着社会发展和进步,大家每个人的数据资源都在日复一日的膨胀着,而硬盘作为数据存储中心,其高精密的结构和高度的使用频率,在复杂的应用环境中,故障发生率也在与日俱增。
几乎每个计算机使用者都会遇到一些数据损坏或丢失的事情,而随着各种应用软件、操作系统、病毒木马等各种因素的增加,数据丢失和损坏的程度也在逐渐变的严重。
一旦重要的数据丢失,其所带来的直接和间接的损失都是很惊人的,而通常大家在费尽心思到处找解决方法的同时,也进一步彻底摧毁了这些数据恢复的可能性。
NTFS是随着Windows NT操作系统而产生的,全称为“NT File System”,中文意为NT文件系统,如今已是windows类操作系统中的主力分区格式了。
它的优点是安全性和稳定性极其出色,在使用中不易产生文件碎片,NTFS分区对用户权限作出了非常严格的限制,每个用户都只能按着系统赋予的权限进行操作,任何试图越权的操作都将被系统禁止,同时它还提供了容错结构日志,可以将用户的操作全部记录下来,从而保护了系统的安全。
本文主要论述的就是NTFS在系统崩溃或磁盘出现故障后如何安全的恢复文件系统。
NTFS是一个具备错误预警的文件系统。
由于NTFS对关键文件系统的系统信息采用了冗余存储,故而当磁盘上的某个扇区损坏时,NTFS仍可以访问卷上的关键数据。
NTFS分区的最开始的16个扇区是分区引导扇区,用以保存分区引导代码,接下来是主文件表(MFT),如果MFT所在的磁盘扇区出现损坏,NTFS文件系统会将MFT转移到到硬盘的其他扇区,这样就保证了NTFS文件系统和Windows操作系统的正常运行。
比之先前的FAT16和FAT32文件系统的FAT(文件分配表),FAT只能固定在分区引导扇区的后面,一旦该扇区,整个文件系统就会瘫痪,NTFS文件系统显然要先进的多了。
不过这种移动MFT的做法却也并非十全十美,如果分区引导代码中指向MFT的部分出现错误,那么NTFS文件系统便会不知道到哪里寻找MFT ,从而会报告“磁盘没有格式化”这样的错误信息。
一、初步应用——双分区恢复实例及分析(一)、现场重现:提示,切勿随意使用自己的硬盘进行试验,切记试验前保存重要数据。
对于移动硬盘,损坏往往发生于硬盘传输数据中断电。
现在我将一个有问题的移动硬盘接到电脑上,在“计算机管理”-->“磁盘工具”中我们可以看到这个未被初始化的磁盘显示为黑色(打开磁盘工具时它会提示你要初始化,不理它,点“取消”),在“计算机”中也找不到这个磁盘。
(二)、手动修复:(阅读有困难的朋友可以先读完第三节再回过头来看这一节,本节的另一个作用是让新手对Winhex界面有一个初步了解)1、打开Winhex-->菜单栏-->选择“工具”-->打开磁盘(F9)-->选择要修复的硬盘,这里是HD2。
2、打开之后图中显示从0000H-->01ffH(16进制)之间的数据全部为0。
现在我从一个运转良好的硬盘分区表中将0000H-->01bdH之间的数据复制并粘贴到损坏硬盘的相应位置。
操作步骤为:在良好硬盘中拉选0000-->01bd之间的区块,被选中区块呈亮蓝色;复制选块;接下来在损坏硬盘中拉选相应区域,将光标定位至0000;右键-->编辑-->粘贴板数据-->写入。
将01fe,01ff填写为55AA,到这里一定保存。
点击黄色区域的图标并转移至63号扇区菜单“视图”-->模板管理(Alt+F12)-->NTFS引导扇区。
打开如下图,并记录黄色方框内的两个数值(63和63777986)63+63777986+1=63778050,跳转至63778050扇区。
稍微向下滚动一点,看到那个粉色框标识出的55AA了嘛?往前找到黄色框内的部分,显示为3F 00 00 00,将其进行反向排列,变为00 00 00 3F于是3F(十六进制)=63(十进制)——我们称这个数为相对偏移量。
接下来跳转至63778050+63=63778113扇区,我们又发现了一个EB开头的扇区再次选择菜单“视图”-->模板管理(Alt+F12)-->主引导记录NTFS引导扇区。
首先从网上下载免费的WinHex软件,有各种各样的(有专家版的,也有普通版的,最好找个专家版的),安装。
(同样也各种各样的,有需要安装的,也有打开就能用的),反正也好找,能用就行。
这个也是本人折腾sd卡,试图将图片取模得到的数据直接送到屏幕上显示时,不知从何读取数据而上网搜了一圈后整理的手记(鉴于不同人下载的不同版本软件和不同的使用环境,本人不对此文档的正确性做保证,仅供参考),此法可以在不了解文件系统的情况下,将数据直接下载到格式化后的SD卡中,然后通过winhex找到文件所在的扇区,然后循环读取即可。
进入正题:右键以管理员身份运行软件(不然有时会出现一些奇怪的问题):插上SD卡,依次打开“工具”-“打开磁盘”选择移动磁盘所在的盘符,确定。
如果是第二次打开此盘,会弹出要求问是否获取新快照,点“获取新快照”然后就可以看到内存卡中的各种文件信息了,上方是文件列表和与文件系统的有关的各种文件,下方显示的是SD卡各字节的十六进制内容,第一扇区中的内容不要瞎改,不然再次插上电脑后会显示磁盘需要格式化才能用,这个扇区的内容可以复制到别的地方,真改坏了还能复制进来进行恢复,这个自行研究。
如果真给倒腾坏了,又不想格式化,可以通过上上图中的选择“物理存储介质”下的那个USB驱动器,将备份的第一扇区内容(如果有)复制进来保存,然后电脑立刻就能认盘。
单击该文件,下方的内容就会直接跳到该文件所在的扇区,并将内容显示出来点击该扇区的第一字节,下方的偏移量就是该字节所在的物理地址,然后循环读取512字节就相当于读取了一个扇区的内容,“偏移量”可以右键复制,这样就知道了任意一字节所在的地址,可以发挥想象各种读写折腾了<( ̄︶ ̄)>附:复制某一扇区或某一段内容的方法:在第一字节右键选择“选块起始”,最后一字节右键“选块结束”,中间内容就会选中,在选中内容上右键“编辑中”即可复制,复制结果可在winhex新建文件粘贴保存。
WinHEX是一款强大的十六进制编辑器和磁盘编辑器软件,适用于Windows操作系统。
以下是WinHEX的基本使用方法:
1. 下载和安装:从WinHEX的官方网站或其他可靠来源下载WinHEX安装程序,并按照指示进行安装。
2. 打开文件:打开WinHEX后,在菜单栏中选择"文件",然后选择"打开"或使用快捷键Ctrl+O,浏览并选择您要编辑的文件。
3. 十六进制编辑:WinHEX以十六进制视图显示文件的内容。
您可以直接在视图中编辑每个字节的十六进制值,或者使用ASCII视图编辑对应的文本值。
4. 查找和替换:使用菜单栏中的"编辑"选项或使用快捷键Ctrl+F来查找和替换特定的十六进制值或文本。
5. 修改和保存:对文件进行任何修改后,您可以选择保存更改。
请注意,这些更改是直接应用到打开的文件上的,因此在保存的时候请谨慎操作。
6. 磁盘编辑:除了文件编辑,WinHEX还可以用作磁盘编辑器。
您可以选择磁盘驱动器并查看和编辑驱动器上的原始数据。
7. 其他功能:WinHEX还提供了许多其他功能,例如数据恢复、校验和计算、数据转换等。
您可以在菜单栏和工具栏中探索这些功能。
请注意,WinHEX是一个功能强大且复杂的工具,使用前请确保您了解您要编辑的文件或磁盘的结构,以避免对数据造成不可逆的损坏。
建议您在使用WinHEX之前阅读其官方文档、用户手册或在线资源,以了解更多详细信息和使用建议。
NTFS⽂件系统结构背景NTFS 作为⼀个新的⽂件系统,因其安全性⾼⽽受到越来越多的重视,越来越多的应⽤采⽤了NTFS ⽂件系统。
作为⼀个新的⽂件系统,NTFS 有着许多区别于FAT32 的优点,如磁盘配额、⽂件系统加密、⽀持动态分区等。
因此了解NTFS ⽂件系统的结构⾮常有必要。
本实验主要完成以下三个任务:1)了解NTFS ⽂件系统的结构,在NTFS ⽂件系统下进⾏磁盘配额、读写权限的设置2)熟悉NTFS 下的MFT 表的结构,使⽤Runtime Disk Explorer for NTFS 查看MFT 表3)通过使⽤⼯具Runtime Disk Explorer for NTFS 及WINHEX,了解⽂件的各种属性和⽂件纪录的结构操作步骤及⼯作要点NTFS 的DBR 分析1)使⽤WINHEX 打开NTFS 分区,并且查看BPB 参数,抓图。
2)记录$MFT、$MFTMirr 的起始簇号。
$MFT起始簇号为0x0C00、$MFTMirr 的起始簇号为0xDD87FF。
MFT 结构以及$MFT ⽂件记录分析1)使⽤Disk Explorer 打开NTFS ⽂件系统2)跳转到MFT 表的开始部分,抓图3)打开$MFT 的⽂件记录,查看记录头和属性列表部分,抓图。
记录头部分:属性表部分:4)记录属性列表中间的常驻属性和⾮常驻属性。
常驻属性:$10,$30。
⾮常驻属性:$80,$B05)打开$80 属性,记录$MFT 的数据流情况,抓图。
⽂件的⽂件记录分析1)在NTFS ⽂件系统下新建⼀个⽂本⽂件,输⼊⼏个字符作为内容。
2)打开该⽂件的⽂件记录3)查看属性列表,记录常驻属性和⾮常驻属性。
常驻属性:$10,$30,$40,$80。
⽆⾮常驻属性4)打开$80 属性,查看属性头和属性内容。
属性头属性内容5)打开-⼤⽂件(超过1M)的⽂件记录6)查看⼤⽂件的$80 属性,⽐较与⼩⽂件的区别。
属性从常驻属性变为⾮常驻属性,body ⾥不再存放⽂件内容,header 内容增多。
用Winhex手工定位NTFS文件系统下的文件
相信很多朋友在认真看完数据恢复书籍中,关于NTFS文件系统中讲述的一系列属性以
后,或多或少还是有些范迷糊。确实,NTFS文件系统结构比较复杂,且书中也没有讲到如
何利用这些属性来定位文件,这对于初学者来说,无疑是一个缺憾.为弥补这一缺憾,我根据我
个人对NTFS文件系统的理解,制作了本分析过程。申明,这只是本人的理解,难免会有错
误的地方。仅供大家参考。
现在我就以我电脑里的一个叫“MFT结构分析”的图片文件,其存储路径为E:\教程\数据
恢复。
接下来我们一层一层的去定位文件.以对所学的属性做一个融会贯通.或许有的朋友会说:
在实际操作中,可以通过在MFT中搜索文件名的方式来做出定位,这样也是可以的。我制作
本分析过程的初衷也就是给初学者对NTFS的理解提供一个思路。
学过FAT文件系统的,一定知道如何定位分区以及DBR,那好,我们就直接从DBR开始
从DBR中得出,每簇扇区数为08H,($MFT一下简称MFT).MFT的起始簇为:
00000C00H,转换为十六进制分别为8扇区和786432簇。现在跳转到786432簇,如下图:
我们可以看到,这是MFT的第一个记录,记录的是它自己。,接下来我们跳转到MFT
的关于根目录的记录,也就是第5号记录。根目录一般存储的文件以及文件夹比较多。所以,
它是非常驻的,关于这些文件夹的信息记录在了其它的位置。而记录在什么位置是由索引分
配属性来记录的,也就是A0属性,接下来着重看一下A0属性,如图:
上图红色的标注的位置是运行(Data run)31H表示用三个字节描述的是索引的位置的
起始LCN(3E9002H),一个字节描述的是长度(02H)。下一个运行的位置描述的是00H表
示到此结束,只有一个运行。(提示:如果下一个运行由内容,那么它描述的LCN加上前一
个运行描述的LCN才是其真正的LCN,如果由三个运行,用第三个运行的LCN加上前两
个的LCN就是第三个运行的真正的LCN,以此类推!)
我们将其转换为10进制数值得到这样一个信息,索引项的起始位置为167998簇,乘以
每簇扇区数8,等于1343984扇区,长度为2个簇,跳转到1343984扇区,如图:
这个位置是根目录的索引项,可以看到里面索引的文件名为元数据。“教程”这个文件
夹也存放在根目录里面,我们搜索该文件名,以找到相对应的索引项,由于NTFS里面文件
名是用Unincode字符来表示的,所以该文件名转换为16进制数值为59650B7A8765H,我
们在根目录索引项里搜索此文件名:
在1343994扇区找到了“教程”的索引项,(1343994-1343984=10,每簇扇区数为8,
说明次索引项存放在第二簇里面)从上图可以看出,其文件记录存放在第6B3500H号扇区,
转换为十六进制为13675号记录,一个MFT占用2个扇区,其文件记录的开始为,从MFT
第一号记录向下数27350个扇区,就其文件记录存放的位置,计算方式为:6291456 +
(13675*2)=6318806,跳转到6318806扇区,如图:
图中描述的本MFT号正是我们要找的,看下面的运行31011BEB01H,转换为16进制
数值为:125723,再乘以每簇扇区数8等于1005784扇区,现在跳转到1005784扇区搜索“数
据恢复”这个文件夹的十六进制数值70656E6362600D59H,结果没找到,难道是此文件夹
没有记录?不可能。猜想,会不会是被驻留了。存放在MFT里面,跳回6318806扇区,搜
索70656E6362600D59 ,在该MFT的第二个扇区里面找到了该文件夹的记录。
跳转到文件的“数据恢复”文件MFT记录号:23A100000000H,十进制为41251号,
乘以2加上6291456,等于6373958。如图:
对NTFS多少有点了解的人都会发现,这并不是MFT。为什么?看一下我的MFT的分
布情况,如图:
我的MFT是分三大块来存放的,(我自己的命名)接下来计算一下:
第一块:MFT从786432簇开始,到796687结束用了10255个簇=82040扇区,每2个扇区为
一个完整的MFT。
第二块:MFT从397607开始到结束397686,用了79个簇632
第三块:……
第一块MFT只用了10255个簇来记录,(我用簇为来但来计算)而我们要找的文件“数
据恢复”存放在41251号,(41251*2/8= 10312.75簇)已经超出了第一块的记录范围,超出
75.75个簇,经计算,在第二块里面才是存放的“数据恢复”的MFT。第二块的开始位置为
397607簇,加上75簇,等于397664簇,由于硬盘是从0开始记录数据的,所以,这个地
方应该还要减去1。跳转到397663簇的四分之三(0.75)位置,也就是第6个扇区
根据运行,得知其起始LCN为A08AH(35488*8=283904),占用一个簇。跳转到283904
扇区:搜索文件名“MFT”结构分析4D0046005400D37E7E00H
其文件MFT号为26A1H(41254号记录),根据前面的MFT记录块的计算,在“数据
恢复”MFT记录向下数三个记录,就是“MFT结构分析”这个文件的MFT记录了。跳转
到该位置
其运行为3281000F8F00H,起始LCN为0F8F00(36623*8=292984扇区),长度为8100H
(129*8=1032扇区),那么结束位置为292984+1032=294016扇区
跳转到文件的开始292984
跳转到294016,选取上一个扇区的结尾
编辑-复制-植入新文件-保存文件名为“MFT结构分析.jpg”。双击,能够正常打开。
说明定位是正确的,而且也没有计算错误。
大家可以看到NTFS要比FAT复杂的多,但是只要是对文件系统的结构充分了解,然
后再通过逆向分析,发现也不是很难。NTFS文件系统是学系RAID的基础,要想学习RAID
的朋友,一定得充分熟悉NTFS的结构。文中有明白的地方请加QQ群11391767讨论。如
有错误的地方,也欢迎各位网友加我的QQ共同讨论86081166。