欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

江民硬盘锁原理及恢复方法

程序员文章站 2022-07-08 22:54:07
江民硬盘锁原理及恢复方法一天,同学突然的找我说是自己的电脑进入不了系统了,我心里想也许就是系统的原因了。到了一看原来是COMS找不到硬盘了。可能是硬盘没有插紧或是硬盘线坏了吧,可是怎么换都不行呀。不... 09-04-21...
一天,同学突然的找我说是自己的电脑进入不了系统了,我心里想也许就是系统的原因了。到了一看原来是coms找不到硬盘了。可能是硬盘没有插紧或是硬盘线坏了吧,可是怎么换都不行呀。不会是….硬盘坏了吧~~。好好分析一下,会不会是硬盘的引导区坏了。用杀毒软件看看是不是引导区病毒。一杀,什么也没有。在看看光盘是不是能启动,还是不行。光盘和硬盘都不能启动是不是传说中的咚~~咚~~江民硬盘锁呀(汗~~),帮人帮到底呀,既然来了就要将它搞定呀,下面我向大家介绍一下关于硬盘锁的恢复方法:
  一、江民硬盘锁的原理
  硬盘锁其实是由于硬盘的主引导记录被修改所引起的。因此,要想了解起原理就要先了解主引导记录的意义,硬盘的主引导的记录是放在硬盘的0柱面0磁头1扇面区,他是由三个部分组成的:
位置和分区 引导程序 分区1 分区2 分区3 分区4 55 aa
所在字节位置 0h 1beh 1ceh 1deh 1eeh 1feh 200h
  其实从0h到1bdh这446个字节称为引导程序,从1beh到1fdh这46个字节被称谓硬盘分区表,一共可以容纳4个分区的数据;从1feh到200h这2个字节被称谓自举标志,在启动的时候,为bios检查用的。现在我们来看看我们的硬盘上面,是不是已经遭受了江民硬盘炸弹的攻击了,结果发现引导程序被改了,硬盘的分区表坏了,但是55aa好想还很正常。看来是硬盘锁的问题了,这样,硬盘的磁头就被锁在硬盘分区表上了,也就不能从启了呀。
  二、修复硬盘的方法
  先说一个简单的方法,就是低格硬盘了:
  找一台主机bios中带有低格软件的计算机,把被锁硬盘用这一台计算机进行低格就可以解除硬盘锁了呀~~,不过我事先说一下,你的硬盘什么都没有了呀,而且这样的电脑好想也消失了呀。
  第2种方法就要热插拔了:
  先将硬盘的电源拔的松一点,将98启动盘放入软驱,然后启动电脑,这时要小心看这电脑呀:)在软盘要启动的时候按下pause键,使电脑停止启动;现在是高潮了呀,你要小心的将拔掉硬盘的电源线,按回车键,计算机又开始启动了,启动完毕后,将硬盘的电源线在插入硬盘。现在硬盘就可以使用了呀`~哈哈,不过这中方法,太冒险了呀,做不好就会机毁人伤呀:)所以我还是不推荐这样呀。
  第3种方法debug法。
  先准备一张能启动计算机的98启动盘,然后还要准备一贯工具软件ultraedit32。在一台正常的计算机中将io.sys的系统文件打开,并去掉它的全部属性,在用上述的软件打开它并查找55aa,并将它改成任意的数(我用的是44cc的呀),其实这样就是将自举标准改掉了。
  至于里面的细节,我就不说了,你们看截图好了呀,用这张启动软盘你就可以顺利地带着被锁的硬盘启动了。不过这时该硬盘的分区表已经不正常,所以我们无法用fdisk来删除和修改分区,而且仍然无法用正常的启动盘启动系统,这时可以用debug来手工恢复。具体命令如下:
  a:\>debug
  -a
  -????:100 mov ax,0201(读一扇区内容)
  -????:103 mov bx,500(设置一缓存地址)
  -????:106 mov cx,0001(设置第一硬盘的硬盘指针)
  -????:109 mov dx,0080(读零磁头)
  -????:10c int 13 (硬盘中断)
  -????:10e int 20
  -????:0110回车
  (注:-????各硬盘不相同,跟后面的:1??都是自动显示的,我们要输入的只是其后的内容)
  -g
  -d500 (查看运行后缓存地址500的内容,这时候我们会发现地址6be开始的内容就是硬盘分区表信息,如果硬盘的扩展分区正是指向自己,那么dos或windows启动时就会因查找逻辑分区而陷入死循环。)在debug指示符下继续修改内存数据:
  e6be
  ??.0 ??.0 ??.0……
  ……
  ……55 aa
  55 aa是硬盘有效的标志,不要修改,??.0表示把以前的数据“??”改成了0,再用硬盘中断13把修改好的数据写入硬盘就可以了:
  a:\>debug
  a 100 (表示修改100地址的汇编指令)
  -????:100 mov ax,0301 (写硬盘一个扇区)
  -????:回车
  -g (运行)
  -q (退出)
  退出后运行fdisk/mbr来重置硬盘引导程序,重新启动即可。
  这种方法虽然麻烦一点,但是它能够恢复硬盘分区表,也就是说恢复以后硬盘中的数据也不会丢失。而以下方法虽然更加方便,但是要么硬盘中的数据难保,要么有一定危险性
  第4种是修改io.sys的方法
  在将上面改过的io.sys文件拷入到我们的98启动盘中。在次启动有硬盘锁的硬盘。因为同学的电脑上有很多有用的文件,而采用这种方法可以不损害硬盘上的文件。你现在可以修复你的分区表了呀,你可以用kv3000和dm中文版的修复分区表的功能了。(此方法适合新手:)
  第5种方法是dm修复
  第一步,把dm拷到好的硬盘上(如果有的话,没有的就用软盘好了)。
  第二步,接上坏硬盘,开机,进cmos,除好硬盘外,其他的ide设为none(关键所在),保存,启动。
  第三步,进入dos,运行dm,选中坏硬盘,分区格式化,ok后启动。
  第四步,进cmos,识别硬盘或设为auto,保存后启动。
  好了,简单吧。
  三、结束语
  为了更好的保护我们的硬盘以及上面的数据,我以为大家要时常背份你们的硬盘上的分区表,一旦你的硬盘分区表坏了,可以在最短的时间内恢复,不至于造成更大的损失。好了就说这些了。