论坛风格切换
 
  • 帖子
  • 日志
  • 用户
  • 版块
  • 群组
帖子
购买邀请后未收到邀请联系sdbeta@qq.com
  • 1879阅读
  • 1回复

[教程资料]数据恢复原理专贴之MBR分区分析 之三--硬盘锁的制作 [复制链接]

上一主题 下一主题
离线pony8000
 

发帖
53401
今日发帖
最后登录
2024-12-18
只看楼主 倒序阅读 使用道具 楼主  发表于: 2012-07-20 15:24:39
继续上面的教程 http://bbs.sdbeta.com/read-htm-tid-436219.html
本文基于mbr下的分区分析。
还是用教程里面的磁盘镜像。
用inspro加载。


在磁盘管理中如下图:


现在用winhex打开磁盘1,进行修改。


=========================================================
下面是历遍分区:










到这里是最后一个分区表项。
=======================================================
***************************************************************


现在修改第二个分区表项,修改成第一个扩展分区的参数
05 401625 401625
****************************************************************
保存



看看结果:






原理:加载磁盘的过程是找遍所有的分区,分区表项的最后一个扩展分区(1622565)只记录一个分区表,到这里,分区结束,现在通过修改把分区表写成了一个环,程序就不停的搜索分区,没玩没了。。。。。就4了。
找分区的过程:先通过0扇区的分区表找到0扇区记录的分区【最多3个】(在我的电脑显示的盘符例如CDE)和主扩展分区的开始(绿框框中的磁盘分区)。然后在扩展分区中分别找各个分区,直到没有扩展为止。

本例中,【1】先读取0扇区的第一个分区表项,这个表项记录一个分区。加载磁盘的扇区63-417689(共417627个扇区)为第一个分区假设盘符为C。
【2】然后读取0扇区的第二个分区表项,这记录一个扩展分区(位于417690扇区)。
【3】读取417690扇区的第一个分区表项,这个表项记录一个分区。加载磁盘的扇区417753-819314(共401562个扇区)为第二个分区假设盘符为D。
【4】然后读取417690扇区的第二个分区表项,这记录一个扩展分区(位于417690+401625=819315扇区)。
【5】读取819315扇区的第一个分区表项,这个表项记录一个分区。加载磁盘的扇区819378-1220939(共401562个扇区)为第二个分区假设盘符为E。
【6】然后读取819315扇区的第二个分区表项,这记录一个扩展分区(位于417690+803250=1220940扇区)。
【7】读取1220940扇区的第一个分区表项,这个表项记录一个分区。加载磁盘的扇区1221003-1622564(共401562个扇区)为第二个分区假设盘符为F。
【8】然后读取1220940扇区的第二个分区表项,这记录一个扩展分区(位于417690+1204875=1622565扇区)。
【9】读取1622565扇区的第一个分区表项,这个表项记录一个分区。加载磁盘的扇区1622628-2056319(共433692个扇区)为第二个分区假设盘符为G。
【10】然后读取1622565扇区的第二个分区表项,空,结束。

设置磁盘锁后【10】步从【4】开始循环执行。
精品软件:百度搜闪电软件园  最新软件百度搜:闪电下载吧
有问题联系 sdbeta@qq.com
离线pony8000

发帖
53401
今日发帖
最后登录
2024-12-18
只看该作者 沙发  发表于: 2012-08-02 07:04:56
数据恢复原理专贴之MBR分区分析 http://bbs.sdbeta.com/read-htm-tid-439304.html
精品软件:百度搜闪电软件园  最新软件百度搜:闪电下载吧
有问题联系 sdbeta@qq.com