当前位置: 首页 > news >正文

【国内电子数据取证厂商龙信科技】手机取证之文件碎片

一、碎片是如何产生的

假设系统正在向硬盘中写入一个名为“AAA”的文件,需要占用5个簇的空间,因此要完全写入到硬盘当中需要较长的时间

磁头从1号簇开始写入文件,当2号簇中的数据写入完时,硬盘接到了一条新的命令写入新文件“BBB”,文件“BBB”体积较小,只需占用1个簇的空间,它被写入到了簇3当中。

这样一来,由于3号簇已经被占用,文件“AAA”剩下的数据就要从4号簇开始写入,最后,剩下的数据被写入到了4至6号簇。

由于“BBB”的插队,文件“AAA”无法储存在连续的簇当中,被分割开的这两段数据就被称为「磁盘碎片」

硬盘经过一段时间的使用之后,内部储存的文件发生了一些变化:一个新文件“CCC”被写入到了硬盘当中,之后文件“BBB”被删除了。

这时,硬盘接到了写入文件“DDD”的命令,“DDD”需要占用3个簇的储存空间。

现在硬盘中共有两段不连续的可用空间,但任何一段单独的可用空间都不足以容纳整个“DDD”文件,所以“DDD”被拆分为两部分写入硬盘剩余的可用空间中,从而又产生了磁盘碎片

二、文件系统与文件碎片

当一个存储设备建立了某个文件系统,那么接下来在这个设备上的数据存储都会按照操作系统对文件系统的分配规则来分配「存储单元」,因此文件会被分成指定大小的「数据块」写入设备。文件的每个存储块都由文件系统来管理。

三、数据恢复与文件碎片

今天我们不讨论文件系统层的数据恢复,只讨论文件碎片的恢复相关。

文件一旦碎片化存储在磁盘上,那么接下来的恢复都是比较麻烦的,举个例子来说明。

图上中我们可以看到,这个文件占用了10836个簇总数,但下面的碎片段是1,说明这个文件的所有簇在磁盘上是连续的。

再看图上中的文件,你会发现这个文件占用了26599个簇部分,而且有46个碎片片段,说明这个文件是由46个连续的碎片组成的不连续文件

如果不考虑文件有被覆盖的情况,那么像图1中的文件可以通过文件签名很好的恢复出来;但如果同样用文件签名的方式来恢复图2中的文件就行不通了,因为它不连续,最好的情况也只能恢复找到第一个连续的片段

好,下面我们来看看一个图片:

这是我用数据恢复软件签名恢复的一个图片文件。看图的下面空白部分,很明显是数据丢失了。

撇开软件的问题不谈,丢失的原因有两种:

第一,这部分数据已经被覆盖;

第二,这不是一个连续的碎片文件,而是由2个以上的碎片段组成的文件,文件签名只能找到第一段连续的,但后面的就没有办法找到了,所以就成这样了。

所以针对这种碎片化的数据恢复,我们会经常看到一种说法叫「碎片重组」。碎片重组是比较复杂的,因为我们如果要重组某个文件,就需要深入研究这个文件的格式和知道文件系统的分配规则,而文件格式各种各样,文件系统的规则也各不相同。

当然,碎片本身也要分情况来看。

如果运气好,所有碎片都是按扇区地址由小到大存储,恢复还是有很大可能的;

但要是运气不好,你遇到第一个碎片可能在低扇区,第二个碎片又在高扇区,而第三个也许跑到磁盘最后面去了!这种没什么规律的碎片存储就相当麻烦啦!

还有一点,就是不同的数据环境也会造成不同的复杂度,比如像录像监控机、行车记录仪等这种数据单一的设备相对来说会简单些。相比之下,要想在普通PC的NTFS下重组一个文件,这个非常复杂的数据环境就很不好处理了。

注:这里只考虑普通的机械盘下的正常IO操作,不考虑文件修复等。

http://www.dtcms.com/a/597146.html

相关文章:

  • 【OpenCV + VS】OpenCV初步:在VS中配置并运行第一个OpenCV Demo
  • Java入门——Java跨平台的原理
  • 16、做中学 | 初三上期 Golang面向对象_进阶
  • Java 不同创建线程的方式什么时候才可以使用 this 来获取线程的引用
  • 兰州做网站的公司wordpress标签云美化
  • MATLAB基于PSO-GA的铁路工程施工进度计划多目标优化研究
  • JavaScript的BOM学习笔记——1、浏览器对象模型
  • python将Excel数据写进图片中
  • 五金配件网站建设报价圣弓 网站建设
  • Django中如何重写save()方法
  • C在线编程 | 提升编程技能,掌握C语言的核心要点
  • 京东这样的网站怎么做网站建设费用怎么算
  • django模型数据查询
  • 佛山骏域网站建设软件开发价格标准
  • discuz企业网站一诺摄影设计
  • 基于微信小程序的特色农产品交易系统
  • 【windows常见问题】pin不可用,无法登录Windows
  • 免费正能量励志网站网站登陆界面怎么做
  • 网站建设找丿金手指排名在iis上部署的网站本机无法浏览解决方法
  • 【Android Studio】解决4K电视机上,网页无法适配的问题
  • 如何选择适合自动化的测试用例?
  • 一步一步网站建设教程联通 网站备案
  • 著名心理学导师钧岚确认出席2025厦门IP+AI万人峰会​
  • 10.游戏逆向-pxxx-UObjectBase成员解密
  • 触发器,存储过程
  • 计算点到三次 Bézier 曲线最短距离及对应参数 u 的方法(转化为五次多项式)
  • npm中-d -g 和默认安装的区别
  • 深圳商城网站建设报价单青岛网站建设的方案
  • AI 编程工具全景分析与 Claude Code 配置 MiniMax - m2 模型指南​
  • MES 生产调度模块:业务逻辑、功能细节与全场景落地