浅谈固态硬盘的电子数据取证
一、固态硬盘概述
(一)结构组成和工作原理
固态硬盘(Solid State Disk简称SSD)即以固态的半导体芯片作为存储介质的大容量存储器。按照所使用的半导体芯片可分为基于闪存(NAND Flash)和基于易失性存储(DRAM)的固态硬盘。后者需要独立电源,只在很特殊的设备中才有使用,故不属于本文的讨论范围。
基于闪存的固态硬盘结构相对于机械硬盘(HDD)简单的多,由外壳和印刷电路板(PCB)组成。其外壳仅起保护作用,核心就是印刷电路板。PCB上主要有主控芯片,缓存芯片(部分低端产品无缓存芯片)和用于存储数据的闪存芯片。
主控芯片连接着闪存芯片和外部接口,通过合理分配数据在各个闪存芯片上的存储来控制整个硬盘工作。优秀的主控芯片具有数据处理速度快、算法先进等特点。
缓存芯片一般设置在主控芯片旁,其作用与机械硬盘类似,高速缓存芯片可以完成数据预读取、缓存写入动作和存储最近访问数据等功能。值得注意的是,某些低端产品为了节省成本省略了缓存芯片,其性能必然降低。
闪存芯片承担了数据存储的重任,因此在电路板上数量最多,占用空间也最大。固态硬盘的容量主要由搭载的闪存芯片数量来决定。市场上常见的固态硬盘容量在16GB到1.6TB之间。
(二)固态硬盘的特点
固态硬盘与机械硬盘相比较的。其主要特点有以下几项:
1.读写速度快:固态硬盘采用电气信号对闪存芯片进行读写操作。相对于需要磁头往复移动的机械硬盘,固态硬盘的寻道时间只有零点几毫秒。在大数据持续读写、4K随机读写等指标上优势明显。
2.防震抗摔:由于采用全固态的闪存芯片为存储介质,不必担心像机械硬盘那样磁头和盘面碰撞。固态硬盘可以在高速移动和震荡的时候正常工作,抗震性和抗冲击性都强很多。
3.低功耗无噪音:固态硬盘不需要驱动磁头运动,也没有轴承和电动机,所以功耗上要低于机械硬盘,且理论上没有工作噪音。
4.工作环境要求低:固态硬盘可以在-10摄氏度到70摄氏度之间工作,而机械硬盘则娇贵的多,只能工作在5-55摄氏度的区间内。
5.容量小价格高:在TB级机械硬盘面前,固态硬盘的容量有着明显的劣势。相同容量的情况下,固态硬盘的价格甚至要高于机械硬盘十倍以上。
6.写入寿命限制:固态硬盘使用的闪存芯片有擦写次数限制,最低端TLC芯片理论擦写次数只有500次,即使是最好的SLC芯片也最多只有十万次左右的擦写次数。最重要的是固态硬盘损坏后数据是无法恢复的,这是引起使用者忧虑的主要原因。
(三)固态硬盘的分类
1.按照底层存储模式闪存(NAND Flash)芯片划分,可分为SLC(Single-Level Cell)、MLC(Multi-Level Cell)以及TLC(Trinary-Level Cell)三种。
SLC结构简单,一个单元存储一位(Bit)数据,速度快寿命长(10000-100000次P/E)可靠性好,缺点是价格较高。MLC顾名思义在一个存储单元中实现多位存储能力,读写速度和寿命ช(3000次P/E)方面都远低于SLC,但由于成本只有SLC的三分之一,是目前市场上的主流。我们在取证过程中见到的固态硬盘90%都采用MLC芯片。而TLC一个单元存储三位(Bit)数据,成本更进一步降低,速度也下降的很严重,最被用户诟病的是其寿命很短(只有500次P/E)。但由于价格更低,三星等厂商已经量产使用基于TLC芯片的固态硬盘产品。顺便提一下,目前我们办案中遇到的U盘多采取TLC芯片作为存储介质。
2.按数据接口分类,可分为常见于台式机和家用笔记本电脑的SATA固态硬盘,常见于商务笔记本电脑的mSATA固态硬盘、常见于超轻薄笔记本电脑的Micro SATA(也称uSATA)固态硬盘、常见于便携式移动存储的eSATA固态硬盘和常见于服务器的PCI-E接口固态硬盘等等。值得注意的是,部分厂商(如苹果公司),使用自己定制的固态硬盘。另有M.
2、CFast等等接口形式的固态硬盘,因在取证实践中很少遇到,故不在本文详述。
二、固态硬盘取证难点
(一)固态硬盘数据存储方式与机械硬盘完全不同
我们知道,机械硬盘的数据存储部分主要是由存储数据的磁盘和读写电磁信号的磁头、磁头控制器组成。读写数据时,磁盘高速旋转,磁头控制器带动磁头在磁盘上径向移动。在两者的共同动作下,磁头最终定位在磁盘的指定位置进行操作。
固态硬盘的存储方式更类似于U盘。数据存储和读写都在闪存芯片内进行。闪存本身是一种可擦除可编程只读存储器(EEPROM),可快速完成读、写、抹除等三种基本操作模式。固态硬盘中的闪存被划分出区块(Block),区块内又划分出许多页面(Pages)。读写数据时,计算机把二进制数字信号转为复合二进制数字信号(加入分配、核对、堆栈等指令)发送到硬盘适配器接口,经主控芯片分配后写入到闪存的页面上,实现数据的存储。
(二)垃圾回收导致无法恢复删除的数据
无论是机械硬盘还是固态硬盘接到操作系统写入数据指令后,会先删除旧数据再写入新数据。而接到删除数据指令时,硬盘仅在相应位置进行做一个可删除标记,待进行写入操作时真正删除。问题在于固态硬盘中,页面是最小的数据写入单位,而区块则是最小的数据删除单位。如要删除A区块内的A1页面数据,则要先将该区块内除A1页面外的所有数据复制到另外的区块内,然后再清除A区块。这样就导致固态硬盘写入操作时,会产生明显延时。 为降低延时,固态硬盘制造商引入了垃圾回收(Garbage collection)机制。简单来说,垃圾回收是利用系统空闲时间全盘扫描有效的页面并合并整理变为一个包含全部有效页面的区块,而那些无效的页面和区块都将被完全清除,然后将回收的空间返回以便再次进行写入操作。垃圾回收对取证的影响在于其不定期自动执行清除操作,导致数据彻底删除。
由于闪存的读写次数有限,如果数据总是存储在某个区块上,必将导致这个区块提前报废。为了保证区块均衡使用,避免某些区块提前损耗而影响到整个硬盘的使用,固态硬盘中采用均衡磨损(Wear Leveling)机制。它可以尽可能地将文件平均分配到每一个区块,保证对每一个闪存区块的擦写(P/E)次数一致,避免对某一部分区块的过度地重复进行擦除操作而报废,从而有效延长了固态硬盘的使用寿命。均衡磨损对取证的影响在于每个区块都会被均衡使用,也意味着均衡擦除。
操作系统也对固态硬盘进行了优化,最为代表性的就是TRIM指令,它能够让操作系统通知固态 Ü硬盘哪些区块是不再使用,这样固态硬盘就可以直接进行垃圾回收工作。TRIM与垃圾回收,均衡磨损机制密切配合,的确极大的提升了固态硬盘的性能,有效的延长了固态硬盘的使用寿命。TRIM指令对取证的影响在于其保证了垃圾回收快速ย完成,也就是说一点在操作系统中删除了一个数据,固态硬盘就会很快擦除所有内容。
对于电子数据取证实践,垃圾回收、均衡磨损和TRIM指令带来的后果是灾难性的:因为垃圾回收机制的作用,用户删除数据后固态硬盘就会彻底清空那个区块,而不是只删除索引而保留数据。均衡磨损可以保证垃圾回收“均衡”擦除硬盘的区块。TRIM指令又能保证垃圾回收高效执行。这三者相结合的最终后果是:在固态硬盘上,无法进行传统的数据恢复工作,而通过未分配簇查找证据文件碎片的可行性也几乎不存在。所以对于固态硬盘而言,应将取证的重点集中在未删除数据之上。
三、常见固态硬盘装机形式及取证对策
(三)作为高速缓存使用这种形式多见于低端超级本平台。部分厂商基于满足Intel公司的超极本概念,为了降低成本,采用板载小容量固态硬盘(24GB-32GB)与机械硬盘组成特殊形式的磁盘阵列。这类笔记本电脑由于价格便宜,有较高的便携性销量较大,因此在我们日常取证工作中也较为常见。针对此类电脑,固态硬盘主要用于存储最近访问数据,提升硬盘响应速度。用户文件扔存放与机械硬盘之上,但由于固态硬盘与机械硬盘组成了阵列,建议采用专用设备在线勘查。
(四)混合硬盘,这是一种新的硬盘类型,属于机械硬盘与固态硬盘相结合而衍生出来的产品除了机械硬盘必备的碟片、马达、磁头等等,还内置了闪存芯片。混合硬盘自动学习用户使用习惯,将用户经常访问的数据放入闪存,可以达到如固态硬盘效果的读取性能。☢如希捷ST750LX003型混合硬盘,拥有750G的存储空间(机械磁盘)和8GB的SLC闪存。此类硬盘较为少见,笔者认为其闪存芯片仅起到缓存作用,数据应主要保✌存在机械部分,因此其取证过程应与机械硬盘类似。
综上所述,随着固态硬盘的市场占有率会进一步提高,我们在电子数据取证实践中接触固态硬盘的机会也越来越多。笔者认为,遇到涉及固态硬盘的计算机设备,首先要查看固态硬盘的使用方式,是单一硬盘还是“1+1”模式抑或是仅仅作为加速缓存使用。在此基础上,要了解计算机上使用操作系统类型,分析用户的使用习惯,确定取证的重点。针对固态硬盘和机械硬盘应采取不同的取证方法和思路;同时要及时了解取证设备的更新换代,借助专业设备,做好电子数据取证工作。