一种西数硬盘已使用固件区的数据擦除方法技术

技术编号:21033363 阅读:27 留言:0更新日期:2019-05-04 05:07
本发明专利技术涉及一种西数硬盘已使用固件区的数据擦除方法,其特征在于包括以下步骤:1)对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除;2)对存在保留区的西数硬盘的进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据,实现擦除。本发明专利技术采用工厂自定义指令集以及ATA标准协议指令集,实现了对西数硬盘已使用固件区的数据擦除,擦除方法简单有效,可以广泛应用于硬盘数据的数据擦除领域。

A Data Erasion Method for Western Hard Disk in Firmware Area

【技术实现步骤摘要】
一种西数硬盘已使用固件区的数据擦除方法
本专利技术涉及一种硬盘数据擦除方法,特别是涉及一种西数硬盘已使用固件区的数据擦除方法。
技术介绍
据2015年卡巴斯基的报告表明(https://www.ithome.com/html/it/130313.htm),美国国家安全局可能在硬盘固件中植入了病毒。在这份报告中,卡巴斯基提到很多大品牌硬盘可能均受到影响,西数硬盘就是其中之一。由于病毒被写入了硬盘固件区,嵌入到硬盘的固件程序里面了,当硬盘通电之后,硬盘固件程序自检的时候,会自动激活病毒,并且把病毒释放到用户区(用户区就是计算机操作系统可以访问的区域)。硬盘自检完毕之后,计算机主机才能识别到硬盘,这时操作系统才能启动,操作系统启动的同时病毒也会自动运行,这些病毒可以将敏感数据复制到硬盘固件区,待时机成熟再传输给病毒的作者。即使用户区的病毒被发现被杀掉清除掉,计算机再次启动的时候,固件区的母体病毒又会释放出新的病毒,不仅如此,低级格式化、高级格式化和分区等操作均无法彻底清除母体病毒,因为现有杀毒软件无法访问硬盘固件区,而病毒母体就躲在硬盘固件区,那也就无法发现和清除病毒的母体。目前市面上大多数擦除机只能擦除用户数据区的数据,有个别的擦除机可以擦除用户数据屏蔽区的数据(目前还没有看到实物或得到证实)。其它区域的数据现阶段还没有一款设备可以自动擦除的,一旦硬盘内部植入了病毒或木马程序,把涉密数据隐藏到用户数据区以外的区域现阶段是没有擦除机能擦除的,目前也没有设备或软件可以检测出来。这样会造成极大的安全隐患。所以对用户数据区以外区域的数据检查和数据擦除研究是非常必要的。现有市场上的擦除机跟西数硬盘交互用的都是ATA协议标准指令集,而标准指令集是无法操作硬盘固件区以及隐藏的屏蔽区。ATA协议标准指令集只能读写用户数据区,例如一个500GB的西数硬盘,在主板BIOS里面识别到的也是500G,那么现有的擦除机只能擦除这500G空间里面所分的区及各类数据文件、底层代码。但实际上这个硬盘的物理存储空间是大于500GB的,这些看不到的空间是被屏蔽的或用于存放硬盘固件(FW)的,这些区域只有通过工厂自定义指令集才可以读写该区域数据。
技术实现思路
针对上述问题,本专利技术的目的是提供一种西数硬盘已使用固件区的数据擦除方法,该方法可以把西数硬盘已使用固件区的数据清0或填充任意数值。为实现上述目的,本专利技术采取以下技术方案:一种西数硬盘已使用固件区的数据擦除方法,其包括以下步骤:1)对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除;2)对存在保留区的西数硬盘的进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据,实现擦除。进一步地,所述步骤1)中,对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除的方法,包括以下步骤:1.1)发送工厂KEY使硬盘进入工厂模式,若发送失败,硬盘无法解锁固件模式,则返回“失败”;若发送成功,则直接进入步骤1.2);1.2)用工厂自定义指令集读取已使用固件区的目录模块信息;1.3)根据读取的目录模块信息计算已使用固件区域并擦除。进一步地,所述步骤1.3)中,根据读取的目录模块信息计算已使用固件区域并擦除的方法,包括以下步骤:①初始化区域表;②对已经读取的目录模块信息进行遍历操作;③计算已经使用的固件区域,并标记在步骤①的区域表内;④通过ATA标准协议指令对区域表外的数据进行擦除。进一步地,所述步骤2)中,对存在保留区的西数硬盘的进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据的方法,包括以下步骤:2.1)发送工厂KEY使硬盘进入工厂模式,若发送失败,硬盘无法解锁固件模式,则返回“失败”;若发送成功,则直接进入步骤2.2);2.2)修改保留区的最大LBA值;2.3)对修改最大LBA值后的数据区,使用标准API对数据区的各扇区进行填充。进一步地,所述步骤2.2)中,修改保留区的最大LBA值的方法为:①判断当前保留区的最大LBA是否大于阈值,如果大于阈值且控制命令类型为1,则返回错误,否则,进入步骤②;②获取硬盘本身的最大LBA值;③当硬盘返回命令后,发送LBA重置命令并且以ATA方式写入硬盘。进一步地,所述步骤2.3)中,对修改最大LBA后的数据区,使用API填充数据区的方法,包括以下步骤:①向系统申请1048576字节大小的内存;②初始化步骤①中申请的内存,将1048576个字节的内存块清0;③设置偏移地址并初始化为0;④当偏移地址小于最大LBA值时做循环,最大LBA值即为填充的用户区大小;⑤调用写API函数对数据区进行擦除,每次擦除1048576个字节,直到擦完数据区为止。本专利技术由于采取以上技术方案,其具有以下优点:1、本专利技术采用ATA标准协议指令集和硬盘工厂自定义指令集实现了对硬盘已使用固件区的擦除,擦除方法简单有效。2、本专利技术对存在保留区的系数银盘进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据,数据擦除可靠且方便快捷。因此,本专利技术可以广泛应用于西数硬盘的数据擦除领域。附图说明图1是本专利技术硬盘盘面的轨道划分示意图;图2是本专利技术缺陷数据结构示意图;图3是本专利技术坏扇区加入到P表后的扇区结构示意图;图4是本专利技术坏扇区加入到G表后的扇区结构示意图;图5是本专利技术01模块的部分截图;图6是本专利技术02模块的部分截图;图7是本专利技术02模块的结尾示意图;图8是本专利技术03模块示意图;图9是本专利技术中03模块的结尾示意图;图10是本专利技术用工厂自定义指令集读取目录模块的流程示意图;图11是本专利技术修改最大LBA流程示意图;图12是本专利技术使用API填充数据区流程示意图。具体实施方式下面结合附图和实施例对本专利技术进行详细的描述。本专利技术首先对西数机械硬盘数据分布情况及说明进行介绍。一、硬盘分区西数硬盘上有数据的地方一共有11处,分别是:用户数据区、保留区、已使用固件区、未使用固件区、永久缺陷表屏蔽区、增长缺陷表屏蔽区、固件区缺陷表屏蔽区、段位屏蔽区、未使用盘面屏蔽区、NVRAM数据区、固态缓存区。这11处,都是可读可写的。但是市面上现有的擦除机只能擦除用户数据区,另外10处的数据是无法擦除的。但是本专利技术通过实验确定用工厂自定义指令集可以擦除另外10处的数据。如图1所示,硬盘盘面的全部轨道划分为固件区、用户区、保留区,其中固件区和保留区普通用户是无法访问的。其实硬盘的实际物理空间比我们看到的硬盘标签上标定的要大,这一部份就是固件区和保留区。其中,固件区包含:已使用固件区、未使用固件区、永久缺陷表屏蔽区、增长缺陷表屏蔽区、固件区缺陷表屏蔽区、段位屏蔽区、未使用盘面屏蔽区。用户区是用户用于存放应用数据的区域(例如C:D:E:操作系统及存放数据的分区)即用户区,也就是硬盘表面标签标定的扇区数(LBA数)乘以每扇区512字节就是用户区总容量。剩下的就是保留区。下面从用途说明、特点、空间大小和数据读取方法的角度对各区进行介绍。1:用户数据区(1)用户数据区是硬盘提供给用户存放数据的区域。(2)用户区数据寻址采用LBA寻址模式以扇区为本文档来自技高网
...

【技术保护点】
1.一种西数硬盘已使用固件区的数据擦除方法,其特征在于包括以下步骤:1)对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除;2)对存在保留区的西数硬盘的进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据,实现擦除。

【技术特征摘要】
1.一种西数硬盘已使用固件区的数据擦除方法,其特征在于包括以下步骤:1)对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除;2)对存在保留区的西数硬盘的进行擦除时,首先将磁盘容量还原,然后使用标准API,对保留区逐扇区覆盖写入数据,实现擦除。2.如权利要求1所述的一种西数硬盘已使用固件区的数据擦除方法,其特征在于:所述步骤1)中,对西数硬盘已使用固件区进行擦除时,通过ATA标准协议指令集和硬盘工厂自定义指令集实现对硬盘已使用固件区的数据进行擦除的方法,包括以下步骤:1.1)发送工厂KEY使硬盘进入工厂模式,若发送失败,硬盘无法解锁固件模式,则返回“失败”;若发送成功,则直接进入步骤1.2);1.2)用工厂自定义指令集读取已使用固件区的目录模块信息;1.3)根据读取的目录模块信息计算已使用固件区域并擦除。3.如权利要求2所述的一种西数硬盘已使用固件区的数据擦除方法,其特征在于:所述步骤1.3)中,根据读取的目录模块信息计算已使用固件区域并擦除的方法,包括以下步骤:①初始化区域表;②对已经读取的目录模块信息进行遍历操作;③计算已经使用的固件区域,并标记在步骤①的区域表内;④通过ATA标准协议指令对区域表外的数据进行擦除。4.如权利要求1所述的一种西数硬盘已使用固件区的数据擦除方法,其特征...

【专利技术属性】
技术研发人员:赵露康艳荣邢桂东郭丽莉周冬林鲍梦湖
申请(专利权)人:公安部物证鉴定中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1