硬盘数据安全与恢复研究
2011-06-04曾凡才
曾凡才
伴随全球信息化进程的发展,计算机的普及和应用,数据变得异常重要,一块硬盘所存放数据的价值往往要远高于硬盘产品自身。近年来,新型硬盘无论在容量、速度和可靠性等方面都有了飞速的发展,故障率大为降低。但受各种因素影响,硬盘的数据安全仍然得不到保障,很多企业损失惨重。因此必须关注和重视对硬盘数据安全与恢复的研究。
1 硬盘结构及存储原理
1.1 硬盘内部结构
硬盘的内部结构通常专指盘体的内部结构。盘体是一个密封的腔体,所有的盘片都绝对平行的固定在一个旋转轴,即主轴上。每个盘片的存储面上都有一个磁头,由磁头控制器负责各个磁头的运动。硬盘工作时,磁头可沿盘片的半径方向动作,而盘片以每分钟数千转(常见的有5 400 r/min和7 200 r/min)的速度高速旋转,这样磁头就能对盘片上的指定位置进行数据读写操作。硬盘是精密设备,必须完全密封,一旦有小的尘埃进入密封腔内,或者一旦磁头与盘体发生碰撞,就可能造成数据丢失,形成坏块,甚至造成磁头和盘体的损坏。
1.2 硬盘数据结构
磁盘需经过低级格式化、分区和高级格式化三个步骤之后才能存储数据。格式化的作用就是在物理硬盘上建立起一定的数据逻辑结构,一般将硬盘分为5个区域,分别为主引导记录区(MBR区)、操作系统引导记录区(DBR区)、文件分配表区(FAT区)、文件目录表区(DIR区)和数据区(DATA区),以实现对数据的存储和管理(见图1)。
图1 硬盘逻辑分区
1.3 Windows存储
硬盘上最重要的数据区除了BOOT(引导区)外,就是ROOT(根目录)和FAT(文件分配表)。ROOT记录文件或子目录的属性、尺寸、日期以及起始簇等,FAT表记录每个簇的使用分配情况。
正常情况下,向硬盘添加一个新文件时,操作系统首先在ROOT里面将文件属性等写进去,在FAT表里找到一个空簇,将它标记为被该文件占用,在ROOT里将这个簇作为起始簇,然后将文件内容写入这个簇。如果文件没有写完,系统再在FAT里找一个簇,将其标记为占用,然后在前一个簇的最后做一个指针指向这个新的簇,形成一个单链表,接着再在这个新的簇里继续写内容。如此重复直到文件内容完全记录完毕。最后系统根据占用的总簇数计算出文件尺寸,取出当前时间写到ROOT里面。
Windows存储中的文件操作过程包括文件读取、写入和删除。
操作系统从目录区中读取文件信息(包括文件名、后缀名、文件大小、修改日期和文件在数据区保存的第一个簇的簇号,如0100)。操作系统从0100簇读取相应的数据,然后再找到FAT中的0100单元,如果内容是文件结束标志(FF),则表示文件结束,否则内容保存数据的下一个簇的簇号,这样重复下去直到遇到文件结束标志。
写入文件时,操作系统首先在DIR区中找到空区来写入文件名、大小和创建时间等该文件的相应信息,然后在DATA区找到闲置空间将文件保存,并将DATA区的第一个簇写入DIR区,其余的动作和上边的读取动作基本相同。
删除时仅将目录区文件的第一个字符改成E5,表示已删除,而不对DATA区的数据操作。如此直到以后有数据写入,并把此数据区覆盖掉,这时才把原来的数据彻底删除。其它如用Fdisk分区只改变硬盘分区表,用Format格式化只修改FAT表,实际上也都没有将数据从数据区直接删除。
2 硬盘数据不安全因素
(1)系统不安全(如使用盗版的系统软件、存在安全漏洞、下载非法程序、系统不兼容软件、没有安装杀毒软件和防火墙而被恶意病毒攻击或入侵等);
(2)硬件或逻辑故障(如因多次读写或质量问题等引起的硬盘物理损坏、出现坏道、分区丢失、软件错误、文件损坏、数据交换错误、容量错误等);
(3)意外事件(如火灾、水灾、地震、风暴等);
(4)人为因素(如因误操作而导致的重要文件被删除或用Ghost恢复系统时恢复到非系统分区的重要数据分区,或由于缺乏经验或没有按相关规章制度操作致使数据丢失以及蓄意报复或窃取等)。
可见,硬盘数据安全的解决方案应以预防为主,恢复为辅。首先,应采用预防性的安全技术,防范危及硬盘数据安全的事件发生;其次,一旦数据的安全受到损坏时采取有效的恢复手段,恢复被损坏的数据。
3 预防性的安全技术
3.1 人员和制度安全
(1)单个用户,自身应多掌握计算机应用知识,培养数据安全意识,严格按照操作规程使用、保存和传递硬盘数据,养成良好的使用习惯。不编写或传播病毒,不蓄意入侵他人计算机,不窃取或删除他人硬盘数据等;
(2)企业要建立完善的数据安全规章制度规范和指引员工正确操作计算机;要购买质量良好、性能稳定的计算机设备和正版操作系统及应用软件,及时升级各种补丁程序;安装软、硬件防火墙和杀毒软件。
3.2 物理安全
存放和使用硬盘的建筑在设计施工时要符合相关规范,防火、防盗、防雷与防震等设施缺一不可;计算机物理设备要配备必要的监控手段,事故报警系统以及专门的人员管理和值守等。
3.3 技术安全
(1)备份
分析发现90%以上的数据丢失和数据安全问题都是由于没有进行及时、合理的数据备份造成的。因此,必须经常对各类数据进行备份操作,并对备份介质妥善保管,必要时应采用异地备份。
(2)镜像
镜像技术是将数据按原样从一台计算机(或服务器)上拷贝到另一台计算机(或服务器)上,从而有效的防止数据丢失。具体执行时一般有两种方法:
①逻辑地将计算机系统或网络系统中的文件系统按段拷贝到网络中的另一台计算机或服务器上;
②严格地在物理层上进行,例如建立磁盘驱动器、I/O驱动子系统和整个机器的镜像。
(3)归档
归档就是将处理完毕且具有保存价值的文件经系统整理后复制到磁带或光学介质上长期保存。
(4)故障前预兆分析
即针对硬盘的老化或不断出错进行分析。因为硬盘的老化或损坏都有一个过程,通过分析可判断问题的结症,以便作好排除的准备。
计算机的BIOS中提供了HDD S.M.A.R.T.Capability功能,开启后它可以使硬盘实时检查自身的状态,及时分析出潜在的问题并报告给系统,有时甚至能给出预计的硬盘故障日期。
4 数据恢复与安全清除
4.1 数据恢复
即使采取了很多安全防范措施,但是不可避免的还是会发生硬盘数据丢失的事件。此时若有备份,则可通过备份直接恢复原始数据。若无备份,则只能对存储硬盘进行技术恢复。由于系统对文件删除、Fdisk和Format等操作都不会彻底破坏数据,所以数据丢失后,很大程度上都可以恢复,而无法恢复的事例中有90%以上是由于在恢复过程中有误操作而导致的,故在进行数据修复前必须注意以下事项:
(1)发现数据丢失应立即关机并进行故障判断和分析,不要再对硬盘进行任何写入操作,否则会增大修复的难度,也将影响到修复的成功率;
(2)要保证修复进程操作的可靠性;
(3)要保证硬盘在CMOS中能正确标识;
(4)不能向目标分区写入新文件;
(5)应防止修复进程中电源中断现象出现;
(6)应保持最新修复进程的备份。
接下来应采取如下步骤完成硬盘数据的恢复:
首先要了解清楚在数据丢失前后的人为操作情况,确定数据丢失原因和故障类型以及需要恢复数据的具体要求等;然后再察看硬盘外部电路板有无烧灼痕迹,避免加电测试时因电路损坏再次对主机造成损坏;若无明显电路损坏,可加电测试硬盘,检测CMOS中是否能找到硬盘,若能找到,则检查硬盘参数是否正确,系统是否能正常启动,若不能,根据故障原因采用适合的方法和数据恢复工具来处理。常见数据丢失的处理办法如下:
(1)主引导程序丢失,可进入纯DOS状态,运行“Fdisk/mbr”命令即可修复;
(2)分区表错误,若是硬盘分区没有激活,则可用Fdisk重置活动分区来修复;若是分区丢失,最好办法是用备份分区表数据重新写回或拷贝其它相同类型且分区状况相同的硬盘上的分区表数据;
(3)FAT表损坏造成的文件内容丢失,可用DE或Debug复制第二个FAT表进行覆盖修复,若第二个FAT表也损坏,可用Chkdsk或ScanDisk命令修复;
(4)目录表损坏时会丢失大量文件,虽然用Chkdsk或ScanDisk命令搜索出CHK文件,然后重命名为原来的名字即可恢复大多数文件,但无法做到完全恢复;
(5)0磁道损坏时的数据恢复,可通过DE磁盘编辑器等工具来使0磁道偏转到其他扇区,而数据则用Easy Recovery等软件来按簇进行恢复;
(6)硬盘误格式化、文件或分区表误删除、用Ghost等应用程序时因误操作导致数据丢失等,可用Easy Recovery Pro_V6.10等软件来恢复。
4.2 数据安全清除
鉴于用删除、格式化、重新分区等方法,并不能够使磁盘上的数据完全清除,所以对于使用过的硬盘等存储介质在报废前必须进行数据安全清除处理。否则一旦泄漏,将给企业造成不可估量的损失。最简单的办法是使用安全擦除软件如O&OSafeEraseV5.3、East-Tec Eraser 2011或超级文件粉碎机等来进行文件的安全删除操作;更可靠的办法是运用专业硬盘消磁器,通过强磁区将磁盘上磁性记录的数据彻底消除,硬盘消磁器抹磁法能彻底将硬盘上所有的磁性记录数据去除,甚至能永久破坏驱动器的定时轨道和伺服信号,而且能够很容易地将密闭驱动器上的转轴发动机永久性的磁性退去。另外,如有必要,还可进一步从物理上销毁硬盘。
5 结语
硬盘数据安全是关系到国家安全、企业发展的重要领域,每个人必须充分认识它的重要性。硬盘数据安全工作要从养成日常的良好操作习惯做起,在没有出现问题时也要做好安全防范工作;如万一出现数据丢失,也绝不要慌乱;而当硬盘不再使用时,也绝不要随意丢弃。
[1]聂元铭,计算机数据修复与维护 [M].科学出版社,2006年.