admin 管理员组文章数量: 1086019
2024年12月19日发(作者:安卓api中文手册)
TRIM指令在固态磁盘数据删除与恢复中的
作用
作者:张辉
来源:《电脑知识与技术》2020年第18期
摘要:伴随着固态硬盘的广泛应用,越来越多的网络犯罪现场会面对固态硬盘电子数据取
证问题。通常来说,固态硬盘数据一旦被删除,利用目前的取证工具几乎无法恢复,但也存在
特定情况。通过实验对TRIM指令在固态硬盘数据删除与恢复中的作用進行了验证分析,实验
表明,在TRIM指令特定设定与取证时间及时的情况下,可以完成SSD盘数据删除后的恢复
与取证。
关键词:固态硬盘;TRIM指令;取证分析
中图分类号:TP399 文献标志码:A
文章编号:1009-3044(2020)18-0218-03
开放科学(资源服务)标识码(OSID):
固态硬盘( Solid State Drives),简称SSD盘,是目前计算机中常用的一种电子存储设
备,与通常的机械硬盘相比具有读写速度快、功能损耗低、运行噪音小、抗震抗干扰性强等特
点,广泛应用于军事、工业、医疗等多个计算机领域中。伴随着固态硬盘的广泛应用,越来越
多的网络犯罪现场会面对SSD盘电子数据取证问题,探索SSD盘数据被删除后的恢复,一直
是困扰电子数据取证人员的一个难题。通常来说,SSD盘数据被删除后很难进行恢复,但在特
定情况下仍然可以进行,这与一个关键的指令有关,这个指令就是TRIM指令。我们通过实验
验证分析TRIM指令在SSD盘数据删除与恢复中的作用。
1 SSD盘的删除数据机制
SSD盘与机械硬盘写入及删除数据的机制是不同的。
机械硬盘删除数据时,Windows仅对被删除文件的文件头进行十六进制的改写以做标记,
等到真正要写人数据时再来删除,所以机械硬盘常见的三种删除方式,即删除到回收站、
shift+delete彻底删除以及快速格式化,完成删除操作后,实际的文件数据依然存在,我们可以
利用很多的文件分析软件或者电子取证工具完成大部分的数据恢复。
SSD盘在进行数据清除时,系统首先需要识别到SSD盘并确认TRIM指令。如果TRIM
指令是开启状态,SSD盘在删除数据时使用Volume Bitmap来记住数据已经删除。Volume
Bitmap是NTFS系统的文件快照,当再次写入数据时,可以根据VolumBitmap情况,向快照
中已删除的区块写入新的数据,而不用花时间去擦除原本的数据。SSD盘的数据被删除后几乎
不能进行数据恢复。
2 TRIM指令
Trim,又叫Disable Delete Notify,本意是禁用删除通知。SSD盘支持Trim指令的最大优
势是避免SSD在垃圾回收时将无用数据当成有用数据来搬运,从而起到延长SSD寿命的作
用,且SSD不会随着使用时间越长速度就越慢。SSD支持Trim最大的劣势就是SSD在清空数
据后无法恢复数据。
Trim指令原始状态可以利用管理员身份进行查看,也可以重新进行设置。SSD盘的TRIM
指令默认为0即Trim开启状态。在一些网络犯罪中,嫌疑人为了增大SSD取证的难度会自行
进行设置,这种情况比较少见,但依然存在,本文我们通过三个实验验证Trim指令在SSD盘
数据删除中的不用效果。
3 固态磁盘数据删除与恢复中TRIM指令作用的不同
(1)Trim指令原始状态的查看
利用管理员权限来查看SSD盘的Trim状态(0为Trim打开,1为Trim关闭),其利用指
令为fsutil behavior query disable-deletenotify NTFS。
在WINDOWS搜索区域内输入CMD,并同时按shift+ctrl+回车键,即以管理员身份启动
CMD命令窗口,可以输入相应指令进行查看Trim状态,如图:
此图命令返回值为‘0’,此为系统TRIM指令已开启状态,也是SSD盘默认状态。
(2)利用CMD窗口设置Trim状态
在管理员身份启动的CMD命令窗口中,可以利用SET命令设置Trim指令的状态,设置
为0为Trim指令打开状态,设置为1为Trim指令关闭状态。如图:
实验-:Trim指令为“0”,即已开启状态下SSD盘数据删除过程及查看。
实验用软件为X-ways Forensics 19.9版本。X-ways Foren-SICS是由德国X-ways出品的一
个法证分析软件,也是目前最为常用的电子数据取证软件之一,其提供了强大的磁盘和文件的
分析功能。
具体过程为首先利用X-ways Forensics加载C盘,C盘是固态硬盘,且Trim指令已开启状
态。我们首先查看一个doc文档的存储空间,确认该文件在SSD上的存储是否为一个连续的
数据块,为了便于利用X-ways Forensics进行文件解析,设定的实验文件存储在一个连续的磁
盘空间中,查看该文档的文件头与文件尾所在的扇区并记录下来。如图1,当前文档的块首与
块尾所在的扇区分别为“932400”及“932471”。
在记录下待删除文件在SSD所存储的具体扇区后,回到C盘目录中,将该文件
shift+delete删除,再重新在X-ways Foren-SICS下加载该SSD分区,查找到上面文件头所在的
扇区,此时发现该扇区数据已全部为零,如下图:
实验结论:当启用Trim指令时(SSD默认状态),删除数据后随即清空待删除无效数
据,而不是等到,要写新数据时才开始清空,所以在这种情况下,已删除数据取证很难恢复。
实验二:Trim指令为“1”,即关闭状态下SSD盘数据删除过程及查看。
重复进行实验一的具体步骤:打开X-ways Forensics取证工具,加载C盘(SSD盘),确
认待删除文件的文件头与文件尾所在的扇区并记录下来。
回到指定盘,将该文件shift+delete彻底删除,再重新加载C盘(SSD盘)分区,找到指
定的扇区,此时发现该扇区所在的十六进制数据依然全部存在。我们可以选中文件块首与文件
块尾,利用“编辑”功能,“导出新的文件”后再进行查看,这时发现,数据恢复是完全可以进行
的。
如图比对:图5记录下该文件的块首所在扇区,图6该文件彻底删除后,再次加载找到所
在扇區。图7为利用“编辑”功能,“导出新的文件”后恢复的文件内容。
实验三:在实验二后续间隔一段时间再去查看对应扇区内容。
间隔一段时间后再去查看实验二文件块首所在的扇区,此时发现该扇区的数据已经被后续
进行操作的其他内容填充。 实验结论:由实验二得出,在Trim指令关闭,进行SSD文件的彻
底删除时,系统不会马上对这一部分数据清空,同样道理,在网络犯罪现场中,如果在已删除
文件的比较短的时间内,来进行对应文件的取证,是能够进行恢复出相应数据的。由实验三得
出结论,如果放置一段时间后,当有新的操作进行,此时新的数据会被写入,会覆盖原来的文
件,而原来的数据一旦被覆盖,原文件也就无法恢复了。
4 结束语
SSD固态硬盘在软件层面上的数据恢复并不是完全不可能的,只能说成功率比较低,其能
否恢复受到TRIM指令和取证时间的影响。Trim指令开启状态时SSD盘的已删除数据的恢复
几乎是不可能,而如果关闭了Trim命令,SSD盘会在空闲时完成删除数据的擦除操作。也就
是在这种情况下,能否恢复取决于取证的时间,如果该硬盘在取证之前已删除数据,但尚未写
入新数据,则该文件数据是可以恢复的;如果在取证之前将硬盘的数据删除且重新写入了新的
数据,则该文件所在扇区内容将被覆盖,也是不能恢复的。
参考文献:
[1]https://wenda. /q/26384 Winl0系统开启SSD固态硬盘TRIM方法教
程
[2]李庆.固态硬盘性能优化提升技术与方法探究[Jl.中国管理信息化,2019,22(24):
150-151.
[3]陈沪娟.固态硬盘管理问答[J].网络安全和信息化,2019(3):165-170.
[4]邓宗永,张鹏.固态硬盘数据销毁技术综述[J].电脑知识与技术,2018,14(28):239-
240.
【通联编辑:梁书】
基金项目:山东省教学改革项目《网络安全与执法专业“学训研战”体系研究与实践》
(M2018X208)
作者简介:张辉(1973-),女,山东警察学院侦查系统副教授,工学硕士,主要研究方
向:网络安全与执法。
版权声明:本文标题:TRIM指令在固态磁盘数据删除与恢复中的作用 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1734665871a1579822.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论