APP下载

Windows系统中文件级数据恢复方法分析研究

2014-01-01徐仙伟杨雁莹

皖西学院学报 2014年2期
关键词:特征算法分析

徐仙伟,杨雁莹,曹 霁

(南京森林警察学院信息技术系,江苏 南京210023)

0 前言

随着信息技术和信息产业的发展,计算机和网络已经渗透到我国政治、经济、军事、科技、文化等各个领域。与此同时,计算机犯罪呈逐年递增的趋势,通常由于计算机犯罪具有犯罪主体专业化、犯罪行为智能化、犯罪客体复杂化、犯罪对象多样化、危害后果隐蔽等特点,使得计算机犯罪明显有别于传统的刑事犯罪[1]。因此,构建全面有效打击各种计算机犯罪的数据恢复、计算机取证技术已成为当前研究的热点。

2012年3月,《刑事诉讼法(草案)》通过了第8次修订,明确把电子证据列为第8类证据,诸如贪污、渎职、赌球、软件侵权、网络盗号、短信诈骗、私服外挂、网络电子传销等案件,都离不开电子取证及鉴定。而针对恶意删改数据、恶意损坏存储载体致使数据丢失的取证技术——数据恢复取证,更是凭借其“补救性”“针对性”“权威性”等特点,成为检察机关最重视的一种电子证据调查取证手段[2]。

数据恢复技术是信息安全技术和计算机存储技术发展到一定阶段的产物,是在数据发生丢失或破坏后各种恢复需求下诞生的,是一种跨硬件平台和软件系统的特殊计算机技术,整合了现有所有的计算机数据存储技术[3]。其应用目的不仅包括恢复出失去的重要数据,使当事人的数字财富免受损失,更重要的是,能针对各种各类犯罪行为而展开的司法意义上的数字化取证工作,为打击通过销毁电子证据手段逃避法律责任提供了有效方法。因此作为电子取证方向的研究人员,不仅要学会数据恢复技术的应用方法,更应该深入掌握各类数据恢复的基本原理、分析与研究数据丢失的原因、预防办法、解决的思路以及实际恢复过程中存在的问题和相应的解决措施,最终实现对各类数据资源的恢复,同时尽可能地保证数据恢复效率的最大化。

目前数据恢复的解决方案主要分为软件恢复、硬件恢复2种。其中硬件恢复包括硬件替换、元器件修复以及盘片数据读取3种恢复方式[4]。软件恢复分为系统级恢复与文件级恢复。系统级恢复:主要针对不同操作系统环境下出现的操作系统不能启动、分区找不到或打开时提示未格式化等现象提出的恢复方法,这类问题的解决主要依赖于各操作系统中使用的文件系统类型,需依据不同文件系统的组织结构原理,常应用存储介质底层编辑工具,如 Winhex 16位磁盘编辑器进行系统级数据恢复,通过分析与修正系统中各类参数信息,确保系统的正常使用。文件级恢复:主要是针对存储介质上各分区或卷中的某个应用文件或用户创建的文件遭遇丢失的情况,如DOC文件丢失等。

本文主要从软件恢复的角度出发,着重对硬盘中文件级数据恢复方法进行分析对比,即以 Windows操作系统为平台,对其环境下用户数据进行分析,分别采用基于文件系统和文件特征的数据恢复方法进行研究,同时进行理论与实验对比分析。

1 Windows操作系统中数据恢复算法分析

1.1 基于文件系统的数据恢复算法

对于Windows操作系统中常用的2种文件系统类型FAT32与NTFS,其数据恢复的原理分别是:1)FAT32文件系统:由于文件进行删除时,只是对其FDT表中作删除标记操作,同时清空该文件在FAT表中的内容,因此当该FDT表中被删除文件项仍然存在(即未被覆盖)时,根据FDT中记录文件的各种信息,如文件名、文件大小、文件创建日期、文件存在的起始簇号等数据信息来重建FAT表,从而恢复丢失的文件内容。2)NTFS文件系统:首先查找出MFT表中做删除标记的表项,依据MFT表中提供的文件数据流属性列表信息,找出数据区中文件内容所在簇空间(即运行位置),从而实现恢复操作。文献[5]中给出了基于NTFS文件系统的数据恢复流程,本文在此基础上进行了扩展,给出了Windows系统下基于FAT32和NTFS两种文件系统的数据恢复算法流程,如图1所示。

图1 基于文件系统的数据恢复流程图

由流程图可知,该数据恢复算法主要依赖于文件目录项(FDT)和主文件表(MFT)中信息,即要求文件系统的信息完整,能够从数据组织原理角度重构文件结构信息,实现恢复操作。由于实现简便,因此该方法是目前最主要的数据恢复方法之一,常用的数据恢复工具软件如Findata、Easyrecovery、RStudio等都是基于文件系统的数据恢复方法[4]。

1.2 基于文件特征的数据恢复算法

在实际应用过程中发现由于磁盘中各种类型的文件都有一定的数据特征,因此除了采用基于文件系统数据恢复方法外,还可根据不同文件类型的特征信息进行分析,并最终提取出想要的文件内容。该方法将主要从文件系统的数据区中直接扫描文件特征类型,进而恢复所需的文件内容[6]。几种常见的文件类型及其存储特点有:1)线性PDF文件的文件头部特征为“25 50 44 46”,文件尾部特征为“25 25 45 4F 46”。2)Office文档的文件头部特征为“D0CF11E0A1B11AE1”,同时 Word(*.doc)文档的文件目录中包含特征信息 WordDocument、PowerPoint(*.ppt)文档的文件目录中的特征信息为PowerPointer Document、Excel(*.xls)文档的文件目录中特征信息为Workbook,但上述3种文档没有明显的尾部特征信息。3)图片格式文件,如JPEG、BMP和GIF文件。其中JPEG文件的文件头部特征为“FFD8FF”、文件尾部的特征为“FFD9”。BMP文件的文件头部特征为“424D”,文件尾部没有明确的特征,但BMP文件的开始扇区的第2到第6个字节表示了当前文件的长度。因此,可利用文件头部特征结合文件长度信息来确定BMP文件的尾部位置,进而恢复出完整的BMP文件。GIF文件中文件头部特征是“474946”,文件尾部特征为“003B”。由于篇幅所限,本文不再具体介绍,其他类型文件特征分析可参考文献[7-8]。

由于上述3类文件类型是用户数据中经常出现的类型,即应用最广,出现频率最高,为此本文将着重对以上3类文件的数据恢复方法进行分析研究。即采用基于文件特征的数据恢复方法,利用其文件头部特征,结合文件尾部信息或文件长度信息等进行判断,找出其文件内容在磁盘中的具体位置。

利用该方法进行数据恢复操作时,主要是针对数据区中数据,因此在算法实现时,存在2种情况,一是依据文件系统提供信息,能够确定数据单元即簇大小,此时可以簇为扫描单位。二是文件系统被破坏,无法获取簇信息,只能以扇区为扫描单位,明显前者速度上存在优势。为体现出程序通用性,本文采用该方法进行数据恢复时,将以扇区为扫描单元,尽管有些文件没有明确文件尾部信息,但是可通过发现新的文件类型头标志或文件大小超过文件系统最大值的方法确定其容量。具体流程参见图2所示。

图2 基于文件特征的数据恢复流程图

2 分析

2.1 理论分析

2.1.1 基于文件系统的数据恢复方法

优点:1)能够找出文件名、文件大小、文件创建时间等相关属性信息;2)恢复方法简单,算法实现容易,目前采用此方法的工具软件较多,恢复时间相对较短。

缺点:1)该方法恢复的数据信息依赖于相应文件系统,当文件系统遭遇破坏时,特别是文件目录信息或MFT表中相应记录项中信息被破坏或被覆盖时,该文件系统下数据恢复的可能性较小。因此该方法适合于文件系统完好情况下出现的误删除、误格式化后进行的数据恢复,效果比较突出。2)由于删除文件后,相应的文件分配表FAT被清空,因此对非连续性数据的恢复可能性减小,只能对文件连续存储空间进行恢复。即要求被恢复的文件是连续存储在介质上。若文件非连续存储,则恢复出来的文件可能存在2种情况:一是能够找出文件名及一些相关属性信息,但是文件内容为空;二是能恢复出文件的部分内容,打开时,发现不完整或者出现许多乱码。因此,利用该方法进行的恢复操作要求删除后能尽快执行,一旦有新的数据对原始数据进行了覆盖,则恢复的可能性将会降低。

2.1.2 基于文件特征的数据恢复方法

优点:1)该数据恢复方法不依赖于具体的文件系统类型,即当文件系统破坏后仍可进行恢复操作。2)该方法恢复的文件相对较多。3)当被恢复的文件为非连续存储即存在碎片时或文件删除后其中部分数据已被覆盖,此时,仍有可能恢复出许多残缺文件中的字符信息,而对取证人员而言,分析没有任何文件系统结构的原始磁盘上的存储信息,提取出目标文件内容,如已删除或隐藏的数据文件也是十分有价值的。

缺点:1)此方法不能恢复出文件名、文件创建时间等相关属性信息,而这些信息对计算机取证人员来说也是相对比较重要的信息。2)该方法恢复数据时主要以扇区或簇为单位进行搜索,随着存储介质空间的不断增大,这种恢复方法所需时间较长。3)由于不同类型的文件其文件特征不同,因此应用此方法需事先对相应的操作系统环境下所需提取的文件特征进行分析,确定恢复流程。另外,由于有些文件的特征不够明确,因此利用该方法进行的可恢复文件类型是有限的。

2.2 实验分析

(1)实验环境

CPU 为Intel(R)Core(TM)i3-2100,主频为3.10GHz;内存为768MB;操作系统为 Windows XP SP2。硬盘:1.95GB硬盘分区,文件系统类型:NTFS。

(2)实验

对分区进行格式化操作,利用上述两种方法进行数据恢复实验分析。如图3、4所示给出了实验结果的部分截图。表1对实验结果进行了分析。

图3 基于文件系统的数据恢复

图4 基于文件特征的数据恢复

表1 实验分析

由表1可见,基于文件系统的数据恢复方法在恢复时间上明显优于基于文件特征的数据恢复方法。但从扫描恢复出的文件数及正确率上来看,基于文件特征的数据恢复方法有明显优势,特别是当分区被进行过多次删除或覆盖操作后,后者能恢复出更多文件,这对取证工作十分有益。

3 结论

针对当前数据恢复技术的发展方向,本文主要以Windows环境为应用基础,深入分析研究2种不同的数据恢复方法,并对2种方法进行理论与实验分析,说明了各自的优缺点,为进一步研究提供了理论依据与实验指导。

由上述实验分析可见,基于文件特征的数据恢复方法在恢复成功率上明显优于基于文件系统的数据恢复方法,但恢复时间较长,因此下一步工作重点主要包括:(1)改进基于文件特征的数据恢复算法流程,一方面使算法能够满足不同类型的文件特征获取,提高算法的扩展性。另一方面优化算法结构,减少磁盘上扇区扫描与数据恢复时间。(2)由于本文主要采用的是文件头、尾等特征信息进行数据的提取,下一步工作可采用其他特征提取方法,如信息熵、内部特征验证等,这些方法的应用能够准确识别文件分片,同时去除基于文件特征恢复方法中出现的文件内容出错、存在噪声信息等问题,从而提高数据恢复成功率。

[1]谭敏.计算机动态取证关键技术研究[D].长沙:中南大学(硕士学位论文),2007.

[2]数据恢复取证找回“丢失的”电子证据[EB/OL].http://www.81it.com/2012/1031/3114.html,2012.10.

[3]王维雄.基于介质存储结构的数据恢复技术研究[D].西安:西安电子科技大学(硕士学位论文),2010.

[4]游春晖,刘乃琦.数据恢复技术在计算机取证系统中的应用[J].成都大学学报:自然科学版,2008(27):131-133.

[5]杜江,王石东.计算机取证中的数据恢复技术研究[J].重庆邮电大学学报:自然科学版,2010(5):683-686.

[6]胡敏,杨吉云,姜维.Windows下基于文件特征的数据恢复算法[J].计算机应用,2011(31):527-529.

[7]Nicholas Mikus.An Analysis of Disc Carving Techniques Master Thesis[D].Monterey:Naval Postgraduate School,2005.

[8]王鹏.Windows日志取证与恢复技术研究[D].杭州:杭州电子科技大学(硕士学位论文),2009.

[9]章华,刘乃琦,郭建东,等.基于孩子兄弟树的FAT32文件删除恢复算法[J].计算机应用研究,2009(3):1116-1118.

[10]钟秀玉.基于FAT32的数据恢复系统的设计[J].计算机应用与软件,2008(11):56-57.

[11]Daniel Ayers.A Second Generation Computer Forensic Analysis System[J].Digital Investigation,2009(6):S34-S42.

猜你喜欢

特征算法分析
根据方程特征选解法
隐蔽失效适航要求符合性验证分析
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
不忠诚的四个特征
进位加法的两种算法
电力系统不平衡分析
抓住特征巧观察
电力系统及其自动化发展趋势分析
一种改进的整周模糊度去相关算法