2019-03-04-Winhex与文件系统部分解析

Winhex与文件系统部分解析

工具

Winhex
Beyond Compare
Kalkules
www.google.com
互联网
耐心

不想阅读长篇大论的直接跳到结尾 不花钱恢复数据 那里,有好东西可以拿。

软件是人设计的,所以软件要比人傻得多。比如恢复数据,winhex手工恢复绝对是一流技术,软件做得到吗
做不到我跟你讲!

前奏

1
2
一个扇区=512字节=winhex横线隔间=offset 1FF
一个字节=8bit=2x4bit=2个16进制数

硬盘物理结构就不详细描述了,大概就是扇面,柱面,磁道这些,类似(0,0,1)三维坐标确定一个物理存储位置。
而操作系统将硬盘存储虚拟成一个连续完整的整体,隐藏复杂结构。。
winhex对应下,0X连续单元为0000000000-..从左到右阅,从上到下阅读

安全注意!入门Winhex最好不要用实际磁盘操作,阅读分析则无关,记得调编辑模式。没有熟悉经验下直接操作物理硬盘的我敬你是大哥。

在新一代的MBR分区结构下,现有网上的winhex结构分析存在很多错误。原因是硬盘逻辑已经更新了,不再是起始扇区占64扇区,而是2048个扇区。如下图

1
2
2048扇区(起始扇区)-分区容量1(尾部55AA于852500479扇区)-2048扇区(分区间隙)-分区容量2-...
资源管理器容量=(分区容量扇区数-8个扇区)*512bit/扇区

新一代硬盘逻辑结构

构建虚拟硬盘文件来分析

vhd

创建VHD即可

分析

未初始化硬盘全0000..
初始化后扇区1均完成,以55AAH结束
初始化后扇区1

新建卷分区,未格式化时,0X000-1BD均不变,引导作用,1BE以下是重点关注地方。
扇区1比较

区分MBR,DBR,EBR

网上的教程很多都是你抄我我抄你的,要不就是胡乱编写一通,把DBR写作MBR层出不穷。
结构来自前面的图:新一代硬盘逻辑结构
主引导MBR是起始扇区中第一扇区的。00000001BE-00000001FF

主引导

第1字节(也就是1BD+1,以下类推)
引导标志。若值为80H表示活动分区;若值为00H表示非活动分区。
第2、3、4字节
本分区的起始磁头号、扇区号、柱面号
第5字节
分区类型符:
00H——表示该分区未用
06H——FAT16基本分区
0BH——FAT32基本分区
05H——扩展分区
07H——NTFS分区
0FH——(LBA模式)扩展分区
83H—— Linux分区
第6、7、8字节
本分区的结束磁头号、扇区号、柱面号
第9、10、11、12字节
本分区之前已用了的扇区数
第13、14、15、16字节
本分区的总扇区数
计算实例:
第9、10、11、12字节 系统隐含扇区00 08 00 00:所谓系统隐含扇区就是本分区(C盘)之前已用了的扇区数,这是一个十六进制数,但要注意:真正的隐含扇区数应该反过来填写(比如:隐含扇区数为3E 4D 5A 6F,则反过来就是6F 5A 4D 3E ,这才是实际的隐含扇区数)。那么,3F 00 00 00反过来写就是00 00 003F,也就是3F,将他转成十进制数我们才能知道实际的隐含扇区数是多大。这可以使用计算器来算,推荐Kalkules。

蓝色,看清楚了吗

资源管理器容量

1CA-1CD:第一主分区
0X32d01800=852498432
852498432*512=436 479 197 184
与资源管理器容量相差(多)4096字节,8个扇区

重点:
28A03002h+4BD037FEh= 1 953 523 712
是最后一个分配的逻辑分区的尾部
J盘尾部

MBR只能容纳4个主分区,
主分区-主分区-主分区-主分区
那我们可以从其中任意一个分区建立逻辑分区,按指针式递进,就变成了
主分区-主分区-【逻辑分区——>逻辑分区——>逻辑分区——>逻辑分区——>逻辑分区——>逻辑分区。。。。】-主分区

https://blog.csdn.net/u011164819/article/details/50501743

$Boot or DBR

DBR存在于各个分区第一个扇区。
http://www.blogfshare.com/detail-ntfs-filesys.html

分区DBR

Winhex模板可以加载DBR

需要关注的有几个
红色标注的
各分区DBR主要差异

可以发现,一个分区头部和尾部完全一致

分区有DBR备份功能

删除分区后,变动的主要有两个地方:
扇区1(MBR)恢复到和原先创始压缩之后一样;
该分区头部被注入000…

不小心删除分卷的恢复办法:
到第一扇区(MBR)修改第5字节为07H(NTFS)
拉到被删除分卷尾部,复制该一个扇区,DBR到前部,写入
在原可用空间上建立新分区,并且一定不要格式化下建立新分区,这样容量就能自动分配在MBR。
如果格式化可能破坏$MFT,那手动修复就非常麻烦,最好软件修复。
如果不加载,就脱机再联机。

关于$MFT和$MFTMirr是非常复杂的,手工修复很麻烦。
文件加载

文件初探索:

网上说直接通过搜索关键字的十六进制Unicode是很不靠谱的,花费时间精力大,而且只能对txt等直接存储的数据有效。
docx实际上是zip打包文件,其中文本内容存储在\word\document.xml下,经过一次zip加密,呵呵,想手工直接搜索,没门
Docx恢复技术:
被彻底删除的docx一般可以直接winhex找回
如果另存为替换Docx,被覆盖一次仍会在窗口中显示,后缀为tmp
替换更新第二次之后,仍存在与硬盘中,但是窗口不显示

Txt另存为替换则会重新写入原EA,要恢复估计得靠物理手段了。
比如弱磁技术
硬盘销毁一般要多次复写,30次以上绝无恢复可能。
比如你把硬盘拿给FBI说这里面有机密资料,估计FBI可以一路还原到出厂的所有数据(笑)

不花钱恢复数据:

免费难出好货,如果不小心硬盘出了各种问题,又不想花钱恢复数据,当你满头大汗去找网上的数据恢复软件时,一般会发现便宜的几乎没什么用,付费的找到的破解版很多都是假的(比如某某recovery,看一下exe的签名就知道是官方的了,扫描文件试用,要恢复,对不起,打钱)。具体什么原因,为了人身安全我就不说具体是哪家公司了,我怕收到律师函(笑),请翻到最后两张图。

但是秉着造福大众的XX,我还是选择了分享。
用BaiduPCS-Go秒传的方法分享一下两个恢复数据的软件,如果不懂怎么用,点击
https://www.jianshu.com/p/8396a982e748
或者https://github.com/iikira/BaiduPCS-Go
下面两个软件我推荐的是第一个:
保存:

1
2
BaiduPCS-Go ru -length=22348040 -md5=4e2c96bf379313effba36e720c222378 "/Data.Recovery.7.0.0.2.rar"
BaiduPCS-Go ru -length=24978990 -md5=7ed028442340de7ee6644c3a3765cde5 "/Ontrack家的软件.rar"

下载:

1
2
BaiduPCS-Go d "/Data.Recovery.7.0.0.2.rar"
BaiduPCS-Go d "/Ontrack家的软件.rar"

关于某数据恢复软件

关于某公司