随着网络存储、云计算、物联网、视频监控等信息技术在人们日常工作、学习、生活中的应用,各类存储介质成为人们生活工作不可或缺的一个部分,海量数据存储在计算机、网络服务器及各种存储介质中,而一旦因各种原因导致数据丢失、毁坏,能否将其恢复就成了是否能够挽回损失的关键。与此同时,相关利用计算机及网络制作、复制传播色情、淫秽物品案件,网上诈骗、敲诈勒索、网络电子传销、利用互联网危害国家安全等案件逐年递增,已折射出我国司法在打击电子数据犯罪工作中面临的巨大挑战.而打击电子数据犯罪的有效办法就是找到具有法律效力的证据,2012年修改通过的《刑事诉讼法》和《民事诉讼法》都已将“电子数据”列为新的一类证据,由此电子数据取证和司法鉴定在刑事、民事诉逐渐呈现重要作用.计算机上的资料被贪污主体人为恶意删除,如何通过找回硬盘数据来取证;硬盘被渎职主体敲打变形,怎样通过提取电子数据证明其渎职;监控设备“昨天的肇事逃逸视频”被“今天的常规交通画面”覆盖,什么技术可以将“暂不可见”的“逃逸证据”重见天日.信息时代,电子数据恢复不但应用于人们的日常工作.生活和学习中,还成了公检法部门破案、断案、判案的重要一环,也成为各个行政、执法机关最重视的一种电子数据取证与司法鉴定技术手段。
1电子数据恢复取证与司法鉴定现状
目前,中国虽然通过修改《刑事诉讼法》和《民事诉讼法》.已经将“电子数据”列为新的--类证据,但是对电子数据取证的操作规范并没有法律规定,电子数据恢复的技术和服务标准更是缺失,公安部于2009年4月7日发布了《电子物证数据恢复检验技术规范》,而该标准不适用于犯罪现场勘查,同时该规范也只是简单.地对数据恢复软件的名称进行了认可;最高人民检察院于2009年4月下发了《人民检察院电子证据鉴定程序规则(试行)》,但该规则没有涉及到电子数据恢复及其工作规范在国家标准《信息系统灾难恢复规范》(GB/T20988-2007)中也没有涉及到电子数据恢复.在学术研究界,对电子数据恢复取证进行研究代表性的主要有杜江等I"]研究的公安部科技计划创新项目:计算机取证中的数据恢复技术研究,但只针对文件系统分区表为损坏的情况进行数据恢复,也没有具体恢复算法和步骤;西安电子科技大学胡跃对基于Windows平台磁盘取证系统数据恢复子系统研究与实现,但只针对数据恢复取证中的碎片进行分析,没有将电子数据恢复取证流程规范化,也没有法律监督;中国政法大学沈树强8对电子证据鉴定视角下的数据恢复问题研究,但只针对电子数据恢复流程进行了研究,没有将司法实践中的电子数据恢复技术和工作流程相结合,也没有法律监督.而各法律实务部门和第三方的电子数据司法鉴定人员一般采用
FTK,DataRecovery,FinalData等国外数据恢复软件进行电子数据恢复取证和司法鉴定,而中国对这些数据恢复软件并没有进行资质、合法性及其数据恢复操作规范进行软件测评,各公安、检察机关及第三方的电子数据司法鉴定人员往往依据行业经验或自行制定的数据恢复方法进行电子数据取证和司法鉴定,因此鉴定结论的法律效力很难得到保证,电子数据作为证据的公正性、权威性.中立性受到质疑,这势必造成在涉及电子数据作为证据的司法实践中影响该类案件的判罚尺度,不利于该类案件的审理,甚至不利于。打击犯罪、保护受害人.因此,基于国内数据恢复在电子数据取证与司法鉴定诉讼案件中的应用情况,借鉴国外数据恢复取证与司法鉴定的相关标准和程序,建立统一的适应于公检法系统的电子数据恢复取证与司法鉴定标准与工作流程成为一个亟待解决的问题。
2电子数据恢复取证与司法鉴定模型
数据恢复分为逻辑类恢复和物理类恢复,物理类数据恢复可通过维修法和替换法实现存储介质的正常识别,然后进行物理镜像后,便可通过逻辑类恢复数据,因此本文主要对逻辑类数据恢复进行研究.在数据被删除后,如果没有进行覆盖操作,可利用原有文件属性通过对文件定位实现数据恢复;在已知文件类型的情况下,可利用已建立的文件特征字知识库,通过文件特征字进行关联快速实现数据恢复;对于部分被覆盖的残留数据碎片进行数据分析、挖掘,利用基于SVM的碎片分类器对碎片进行分类,再用上下文区域碎片重组算法对碎片重组,提高了数据恢复成功率.电子数据恢复取证与司法鉴定模型将理论和司法实务操作相结.
合,将数据恢复的技术性和电子数据取证与司法鉴定程序的法律性相结合,从而既提高了数据恢复的效率,也提高了恢复出的电子数据的法律效力。
2.1电子数据恢复取证与司法鉴定模型
电子数据恢复取证与司法鉴定模型如图1所示,模型按司法鉴定实务将电子数据恢复取证与司法鉴定流程分为数据恢复取证与司法鉴定委托、鉴定机构受理、基于时间戳的多人数字签名、数据恢复介质的镜像与哈希校验、数据恢复取证与司法鉴定、撰写鉴定报告、鉴定人出庭进行证据呈堂.为保证介质的客观性、原始性、完整性需要有鉴定委托人、申请人和鉴定机构等多人进行数字签名,该签名有政法CA颁发的证书和基于时间基准服务器的时间戳所形成;为了保证原始数据的再现性,提高证明力,数据恢复取证一般都需要对原始介质进行位对位镜像和哈希校验,然后利用镜像进行数据恢复;对电子数据恢复取证与司法鉴定的全程实施监督,保证数据恢复取证与司法鉴定出的电子数据在诉讼案件中的可采性力、证明力、法律效力和证据链的完整性.在电子数据恢复操作实务中,基于Windows平台下的FAT和NTFS文件系统,针对文件分区表没有损坏的文件系统,利用文件定位算法快速、精准实现数据恢复取证与司法鉴定;针对大容量硬盘,利用文件特征字可快速高效地恢复特定类型的文件;针对由于犯人嫌疑人恶意将文件分成碎片隐藏文件及文件分区表损坏的情况,利用基于SVM的碎片分类器对文档碎片进行分类,再利用上下文区域重组算法重组文档碎片.电子数据恢复取证与司法鉴定操作完成后,需要鉴定机构人员撰写鉴定报告,进行证据呈堂,并在必要时出庭质证。
2.2基于文件定位的数据恢复取证与司法鉴定,MBR(主引导记录)磁盘分区是目前使用最为广泛的一种分区结构、所以论文主要针对MBR磁盘分区进行文件定位数据恢复.在MBR磁盘分区中,分区表占64字节,而每个分区占16字节,故最大可存放4个主分区,当硬盘的存储容量比较大,并且需要建立更多磁盘分区时,就必须使用扩展分区,用EBR(扩展引导记录)表示,MBR磁盘分区的整体结构见图2所示。
从图2可以看出主磁盘分区通过MBR中分区表进行定位,而扩展分区之间通过指针结构形成一个单向链表实现定位.在FAT16的每个分区表中包括DBR,FAT1/2,FDT和DATA,而FAT32文件系统的FDT
在数据区.NTFS的DBR包含在$BOOT文件中,和文件有关的信息被称为属性,以文件记录的形式存放在$MFT中,NTFS文件系统位置结构如图3所示。用WinHex:t1] 对MBR磁盘分区常见的文件系统进行分析,文件的定位算法如下:
1)通过查找MBR/EBR中的分区表信息,获取每个分区的分区类型和该分区的DBR起始扇区数(相对偏移地址一般为63号扇区);
2)读取DBR的BPB(相对偏移地址:0DH ,0EH-0FH,10H,11H-12H和16H-17H)分别获取每簇扇区
数、DBR保留扇区数、FAT个数、根目录项数(-般为512)和每FAT扇区数;IF分区类型为FAT32 ,则读取DBR的BPB相对偏移地址24H-27H获取每FAT扇区数;IF分区类型为NTFS,则读取DBR的BPB相对偏移地址30H-37H获取$MFT起始簇号,跳转到第4步;
3)FDT的起始扇区数= DBR起始扇区数+ DBR保留扇区数+FAT个数*每FAT包含的扇区数,FDT占用扇区数= (根目录项数*32)/ 512.从FDT的起始位置查找已被删除的文件名(第1个字节变为E5),直到找到为止,则该目录项相对偏移地址1AH-1BH,1CH-1FH处的数据即为该文件在DATA区的起始簇号和大小;IF分区类型为FAT 32,则需要将该目录项相对偏移地址14H-15H(高位)、1AH-1BH(低位)两处的数据合并作为该文件在DATA区的起始簇号,因为在DATA区中,簇从2开始编号,文件的起始扇区数= FDT的起始扇区数+FDT占用扇区数(文件系统为FAT32时为0)+(起始簇号-2)*每簇扇区数,跳转到第5步;
4)FDT起始扇区数= DBR起始扇区数+ $MFT起始簇号*每簇扇区数+5* 2(5为目录文件的记录
号,2为每个文件记录所占的扇区数),从FDT起始位置使用Unicode编码向下搜索已被删除的文件名,直到找到该文件的文件记录(30属性的相对偏移地址42H为该文件名),从80属性的相对偏移地址08H获取常驻属性,IF常驻属性=0,则相对偏移地址10H-13H,14H-15H处的数据即为该文件大小和起始位置;ELSE相对偏移地址30H-37H,40H处字节的高4位数据即为该文件大小和DataRun起始簇号,文件的起始扇区数= DBR起始扇区数+ Data Run起始簇号*每簇扇区数;
5)跳转到已删除文件的起始扇区位置,按上步获取的文件大小,复制该文件内容,按原有文件类型保存为一个新文件,即可完成数据恢复。基于文件定位的数据恢复,可精准恢复被删除的文件,NTFS文件系统中,不论文件是否连续存放,文件./目录被删除后都可通过该文件记录找到起始簇号进行数据恢复,但当要删除的文件比较多时,需要逐个恢复,工作效率比较低。
2.3基于文件特征字的数据恢复取证与司法鉴定
通常要恢复的电子数据都是特定的文件格式,比如*.doc.*.xls.*.jpg.*.mpg等格式,而在司法办
案中往往要处理很多硬盘.并且容量比较大,因此为提高工作效率,可基于文件首、尾部特征扫描文件系统的数据区,进而确定文件的起始和结束位置.优先快速恢复所需要的特定文件.文献[5]利用word文件的头部和尾部特征实现对* . doc文件的数据恢复.用WinHex抓取的* .jpgl°]文件的首尾特征字如图4、图5所示,从图中可以看出* . jpg文件的头部特征字为0x FFD8FFE000104A464946 ,尾部特征字为0xFFD90000。参照上述方法可求得其他类型文件的首、尾特征字,从而建立基于文件首、尾特征字的文件特征数据库,实现基于文件特征字的数据恢复取证与司法鉴定,文件特征数据库表见表1所示,缺省大小为一1时表示没有缺省大小,位置为0表示从起始向后查找,为一1表示从文件最后向前查找.当文件不连续存储时,在NTFS文件系统中需要借助文件记录获取文件存储后续数据块,实现特定文件的数据恢复。
2.4基于文档碎片重组的数据恢复取证与司法鉴定
在电子数据取证与司法鉴定中,由于犯罪当事人删除、格式化、文件交叉覆盖等人为破坏,形成文档碎片,导致许多存于文件系统元信息无法描述的未分配区域的电子数据无法被提取,尤其是当文件头被覆盖的情况下,基于文件特征的数据恢复将无法正确地进行数据恢复. Metz等针对文档随机碎片问题,提出了SmartCarving框架图,见图6所示.
该框架将文档碎片恢复分为预处理、碎片收集和碎片重组3个阶段,预处理阶段主要处理被压缩或被加密的数据,排除已有文件占用的簇;碎片收集主要用于对数据块碎片进行分类;碎片重组是根据碎片分类的结果,重组碎片成文件.为提高文档数据块分类的正确率,有效进行文档重组,进而提高数据恢复的成功率,本文在SmartCarving框架模型的基础上,对碎片收集中文档分类和碎片重组进行了研究,提出了基于SVM的碎片分类器。
2.4.1 基于SVM的碎片分类器
在碎片收集阶段主要是对大量碎片进行文件分类,目前对碎片进行分类主要有基于距离的分类和基于机器学习的分类.基于距离的分类主要是利用不同的文件类型.其字节频率分布度(filefingerprints)不同和连续性字节差异性的特性进行文件分类,这种方法需要对每一个文件类型都建立基于字节频率统计的文件指纹模型,然后设定阀值,如果某个文件数据块与某一个模型的距离低于设定的阀值,则判定为对应的文件类型,但该方法中很难确定一个比较理想的阀值,另外对于那些字节频率比较相似的文件也很难正确识别.基于机器学习的分类主要是在统计的基础上建立机器学习模型对文件数据块进行分类,目前最具有泛化能力和最小容错率的支持向量机( supported vector machines,SVM)分类算法的研究广受关注,应用与碎片分类描述如下,本文首先利用Pearson相关系数对包含有Office系列文件.JPEG、C++源码等文件的DFRWS 2007碎片映像数据度量碎片之间的相关性,训练SVM模型,公式如下:
mn是训练集中的碎片个数,R(i)是第i个文件特征字与已知对应文件类标(类型标准值)的相关性,X...是第k个碎片的第i个特征字,X是第i个特征字的平均值,Y,,Y分别为第k个碎片的类标值和整个碎片的类标值.文件特征字包括以下几个。
1)文件首尾部特征字;2)针对普通文本和图片的信息熵;3)字节/字符频率分布特征,即文件中每个字节/字符的取值范围的统计特征;4)上下文连续字节变化度,即数据块中连续字节之间的平均连续性统计特征由公式(1)知,|R(i)|的变化在0和1之间,值越大,表面该特征对于分类的贡献就越大.根据相关度量,利用SVM-SFS[9]方法计算每个特征字的权重,从而针对各个文件类型建立基于SVM的多特征字分类器。
2.4.2
碎片重组
文档碎片重组就是对同-一类型的碎片确定连接顺序,然后组合成多个不同的文件.利用文件首部特征字和文件摘要信息(文件长度、时间等文件属性信息)可以确定文件头碎片.而新型文件系统的特点是尽量减少碎片,因此同一个文件的碎片多以2分存在,分成3,4个甚至多个碎片的情况很少见,并且在2分的情况下一般都是从一块连续的区域向邻近的区域空间扩展存储.为此,本文提出了一个上下文区域碎片重组算法如下:
1)确定某个文件头碎片所在区域的地址;
2)利用基于SVM的碎片分类器从该区域起始地址开始顺序向后(前)查找,至到不属于该文件类型的碎片,则上述碎片在存储介质上的逻辑存放顺序即为碎片重组的顺序;
3)跳过不属于该文件类型的碎片,根据文件碎片头部中的文件大小,然后利用碎片分类器顺序浮动跳跃向后(前)查找相同类型文件的数据碎片区域,并且该区域的大小应该等于该文件剩余大小;
4)如果第2片区域大小小于该文件剩余大小,则有可能是碎片被分成2片以上,则重复步骤3),至到查找到该文件全部碎片至,当出现大小一样的不同碎片区域或没有找到剩余大小的碎片区域时,可利用时间相同或相近的文件特性进行碎片关联和重组。
3实验及结果分析
为了验证电子数据恢复取证与司法鉴定模型的工作效率,选用DFRWS2007发布的数据映像作为实验数据,大小为256M,该数据映像主要包括OfficeWord,Excel,PDF,BMP,JPEG等文件类型.利用Winhex提供的脚本开发技术和API函数[10]将模型中的算法应用于Winhex中进行原型实现,然后应用电子数据取证.与司法鉴定中常用数据恢复软件FTK 1. 50b, Data Recovery6. 10. 07 ,Final Data 3.0对该数据映像进行数据恢复分析比较。实验环境: Intel(R)Core(TM)酷睿i5 M520@2. 40GHz双核,内存2 G,硬盘250 G, Windows 7 Professional.根据文件类型出现的概率,实验中从文档和图片两大类文件类型中分别选择了Word和JPEG文件类型进行数据恢复和分析,结果如表2,3所示。
从表2,3可以看出,对于Word,JPEG文件来说,电子数据恢复取证与司法鉴定模型中用到的文件定位、文件特征字和文档碎片恢复综合方法,无论在扫描、恢复时间上还是在恢复成功率上都比一般通用数据恢复软件的效率要高.就数据恢复成功率上差不太多,但是在时间上则大大节省了时间,这在政法机关进行大量数据文档恢复时尤其如此。
结论
本文在对电子数据恢复取证与司法鉴定现状进行分析的基础上,提出一种电子数据恢复取证与司法鉴定模型,该模型按电子数据司法鉴定实务将电子数据恢复取证与司法鉴定流程化和标准化,使用多人数字签名、原始介质位对位镜像和哈希校验来提高电子数据的证明力;通过对电子数据取证与司法鉴定全程进行流程监管与操作监督,保证恢复的电子数据在诉讼案件中的可采性力、证明力、法律效力和证据链的完整性。模型在数据恢复实践中,基于当前Windows平台主要使用的FAT和NTFS文件系统,针对文件系统分区表未损坏的情况,提出了文件定位算法快速恢复;针对法律实务中需要恢复的特定文件类型,提出了文件特征字算法进行数据精准、高效恢复;而对于实践中难于恢复的数据碎片,利用基于SVM的碎片分类器对碎片进行分类,再用上下文区域碎片重组算法对碎片重组,提高了数据恢复成功率.实验结果表明,该模型中所用到的数据恢复算法能够针对实践中不同的情况下进行有针对性数据恢复,尤其是司法实践中遇到大量文件需要恢复时将大大节省时间,提高工作效率,这在法律实务中很可能会有很大帮助。
下一步工作将重点研究其他文件系统,比如针对大容量U盘的ExFAT文件系统、Linux的Ext文件系统(包括Android手机的YAFFS文件系统)、苹果机的HFS+文件系统(包括移动终端文件系统I0S);还包括其他类型文件的特征字,丰富文件类型特征字知识库;并进一步寻找更有效的碎片分类挖掘及关联重组算法。