- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于NTFS文件系统数据恢复编程技术
基于NTFS文件系统数据恢复编程技术
【 摘 要 】 文章针对由主观因素造成计算机中数据丢失的情况提出了一种Windows NTFS 文件系统下数据恢复的实现方法,介绍了NTFS 数据恢复编程的原理,设计了数据恢复的编程框架,并结合实际编程完成了数据恢复的实现,最后通过测试验证了程序的功能可用性。本程序创新性采用自定义结构体的方式扫描MFT表,速度飞快,同时能读出Linux环境下用DD命令拷贝的文件,所有数据恢复操作均在内存中进行,不会对磁盘写入任何数据。
【 关键词 】 NTFS;数据恢复;编程
1 引言
随着信息化社会的快速发展及电脑的广泛应用,使用计算机进行犯罪的案件越来越多,给人们和社会造成了巨大的财产损失。然而,为了逃脱公安机关的打击,犯罪分子经常将计算机上的犯罪数据信息彻底删除,或将分区甚至整个硬盘进行格式化操作,从而使得重要的犯罪证据丢失,给案件的取证带来极大的困难。因此,如何迅速准确地在计算机上恢复出犯罪证据,成为切实打击犯罪的一个关键因素。
在NTFS卷中,虽然文件被删除了,但其MFT表项并没有清空。不过删除文件的同时,MFT被清空的可能性也存在,在极端情况下,如系统分配给MFT的空间已经接近用完时,系统在删除文件的同时也会将MFT清空,并直接用其他文件的MFT覆盖该文件的MFT。一般情况下,只要MFT表项没有清空,则文件MFT表项中80属性值就不会清空,也就是说文件数据还存在磁盘上,故文件数据就存在恢复的可能。
2 编程需要的原理
要想进行数据恢复,就必须知道文件存储的原理,本文首先对NTFS 文件系统、主文件表MFT结构以及文件的几个关键属性(即文件名、标准信息、数据流等)进行分析。
2.1 NTFS文件系统概述
NTFS是随着 Windows NT操作系统而产生的,全称为“New Technology File System”,中文意为新技术文件系统,简称“NTFS”。NTFS将分区上所有的数据都视为文件,其中大约12%分配给了MFT,以满足其不断增长的文件数量。为了保持MFT元文件的连续性,MFT对这12%的空间享有独占权,余下的88%的空间被分配用来存储文件。在文件存储部分中部存放的是MFT前4个(或者更多)元数据文件的备份。如图1所示,显示了NTFS文件系统的结构。
2.2 MFT(Master File Table)结构分析
NTFS文件系统的一大特点是所有的数据,包括系统信息,如引导程序、记录整个卷的分配状态位图等都以文件的形式存在。MFT是NTFS卷结构的核心,系统通过MFT来确定文件在磁盘上的位置以及文件的所有属性,MFT是一个与文件相对应的文件属性数据库,它记录了除文件数据信息外的所有属性(包括文件的MAC时间、文件名、文件的父目录MFT参考号等),甚至当文件内容很短时,其内容直接在MFT的数据属性中存放,不再额外占用簇空间。
每个文件都与MFT表一一对应,而文件删除、修改等操作都在MFT表中得到了体现,故我们首先必须分析出MFT结构。我们用工具软件将分区底层打开发现,MFT由两个部分组成,即MFT头(也称文件记录头)和属性列表。MFT头的长度和偏移的数据含义是固定不变的,而属性列表则是可变的,其不同的属性数据有着不同的含义。下面首先分析MFT头结构中主要的偏移位置,即在数据恢复程序设计中必须考虑的偏移位置,如表1所示。
2.3 NTFS下重要的属性结构
(1)10属性分析。10类型属性即$STANDARD_ INFORMATION属性,为文件的标准信息。包括一些基本的文件属性,如只读、系统、存档、隐藏及MAC属性。其中,相对属性头的偏移14H~15H两字节值为10属性值的开始偏移,偏移04H~08H四字节值为10属性的总长度。
(2)30属性分析。30类型属性即$FILE_NAME属性,用于存储文件名,总为常驻属性,其相对属性头的偏移代表的含义和10属性一样,不再赘述。属性值中包括父目录的MFT参考号、文件名,获取父目录的MFT参考号。需要注意的是有些MFT表项中会出现两个30属性,前者用于兼容8.3格式文件,假设文件名为recovery.txt的文件,在首个30属性中,其文件名则为RECOVE~1.txt,共12字节;后者用于记录文件或目录的长文件名。
(3)80属性分析,80属性即$DATA属性,用于存放文件真实数据或文件数据存放的物理偏移位置。80属性可为常驻属性也可以是非常驻属性,取决于文件数据大小。当文件数据很小,能直接在MFT中存放时,则为常驻属性;反之,当文件很大时,则为非常驻属性,即会在属性值位置记录文件数据的簇运行列表(Data Runslist),这个列表直接反映了文件
您可能关注的文档
- 基于MSER和Tesseract自然场景图像文字识别.doc
- 基于MSP430F2254单片机计算器设计.doc
- 基于MSP430F4250单片机可燃气体报警器设计.doc
- 基于MSP430F44血氧测量仪设计.doc
- 基于MSP430F5529智能交互药盒设计.doc
- 基于MSP430G2553温度检测系统设计.doc
- 基于MSP430单片机二次间设备无线输电控制系统.doc
- 基于MSP430单片机便携式阻抗测量系统.doc
- 基于MSP430单片机导盲机器人控制系统设计.doc
- 基于MSP430单片机实验系统及传感器技术照护系统.doc
- 纳米医学:纳米技术在颈椎病治疗康复课件.pptx
- 统编版(2024)新教材小学三年级语文上册第八单元第25课课后作业-《手术台就是阵地》.docx
- 纳米医学:纳米技术在骨髓增生异常综合征预后改善课件.pptx
- 纳米医学:纳米技术在骨科的应用课件.pptx
- 纳米医学:纳米技术在骨科血管新生促进课件.pptx
- 纳米医学:纳米技术在骨髓纤维化血管新生抑制课件.pptx
- 2.2尊崇宪法 导学案-2025-2026学年统编版道德与法治八年级下册.docx
- 纳米医学:纳米技术在高脂血症治疗中的应用课件.pptx
- 纳米医学:纳米技术在鼻腔疾病治疗课件.pptx
- 纳米医学:纳米技术增强免疫系统抗肿瘤记忆课件.pptx
最近下载
- 铁路预应力混凝土桥梁智能张拉与压浆施工技术规范.pdf VIP
- Gema金马OptiStar CG06 用户手册.pdf
- 2025年建筑起重信号司索工考试题库(含答案).docx VIP
- (2025年)建筑起重信号司索工考试题库(含答案).docx VIP
- 2024年昆明医科大学海源学院马克思主义基本原理概论期末考试题推荐.docx VIP
- 2024年昆明医科大学海源学院马克思主义基本原理概论期末考试题汇编.docx VIP
- 信息安全等级保护二级建设方案.docx VIP
- 2024年昆明医科大学海源学院马克思主义基本原理概论期末考试题带答案.docx VIP
- Gema金马OptiSelect手动静电粉末喷枪用户手册.pdf
- 东元伺服简易型JSDEP使用.pdf
原创力文档


文档评论(0)