BIOS密码的解密和恢复
出处:《网管员世界》 作者:潘钜添 时间:2005-1-14 0:28:00
如果你设置了CMOS密码而又忘记,或者单位里的其他同事设置了CMOS密码又没告诉你,但你却很想进BIOS程序进行设置和修改,这时没有密码是很难的。但是,天无绝人之路,既然设置有密码,那我们想办法把它解开或恢复成默认值就是了。对CMOS解密和恢复有很多种方法,下面我给大家作个介绍。
用厂商预留的通用密码
为了解一时之急,生产厂商在自己生产的芯片中预留了一些通用密码,这些密码对有的主板有用,但不是对所有主板都有用。例如现在的主板大多采用Award公司的BIOS系统,笔者主要向大家介绍Award的万能密码: 1.dirrid;2.eBBB;3.h996;4.wantgirl;5.589589;6.Award;7.Syxz。(注:4.50版BIOS以下有效)。
如果你的主板是其他厂家的BIOS系统,可以向厂家咨询或在网上查找其预留的通用BIOS密码。当这些通用密码你都试过了,但还是解不开CMOS的密码,那么可能是主板生产厂商修改了BIOS程序,这也难不倒我们,请看下面的方法。
用调试工具Debug
一般来说,计算机的CMOS设置可以通过70H和71H两个端口进行访问和更改,最简单的方法就是将其全部清除,即变成缺省设置。下面的程序段就是用Debug命令对CMOS数据进行清除工作,Debug是DOS的一个外部命令, 你可以在Windows\Command目录下找到它,启动电脑到MS-DOS环境,在DOS提示符号下输入Debug并回车,操作过程如下所示:
c:\dos>debug
-o 70 21
-o 71 20
-q
或:
c:\dos>debug
-o 70 10
-o 70 01
-q
注:“-”是系统本身出现的,所以不用输入。
重新启动系统,这时系统会告诉你CMOS参数丢失,要求你重新设定CMOS参数。按Del键进入CMOS,你就可以对其进行设置了。需要注意的是,此时CMOS已变成缺省设置,如果要恢复原来的设置,需要手工进行某些参数的设置。其实,你还可以通过 Basic 语言进行破解,若你手头上正好有Basic 软件,便能轻而易举地把CMOS的密码算出来!方法很简单,只需执行以下程序即可: COLOR 10,5
DIM A(9)
CLS
PRINT SPACE$(980);TAB(22);“THE PASSWORD FOR ZHE BIOS IS:”;
OUT&H70,28
P=INP(&H71)
OUT&H70,29
Q=INP(&H71)
X=16^2*Q+P
COLOR 30,5
I=0:J=0:N=0
Y=X+I*65535
Z=INT(3*Y/(4^(N+1)-1))
IF Z<=126 THEN 190
N=N+1
IF N<8 THEN 140
I=I+1:J=0:N=0:X=16^2*Q+P:GOTO 130
IF Z<32 THEN 180
A(J)=Z:J=J+1:A=Y-Z*4^N
IF A=0 THEN 230
N=N-1:Y=A:GOTO 140
FOR K=0 TO J
PRINT CHR$(A(K));
NEXT
COLOR 10,5
END
当然,对CMOS电池放电也可以较方便地完成对BIOS密码的解密和恢复操作。
对CMOS电池放电
这种方法需要打开机箱,找到CMOS电池,对其进行放电。实际上,现在的大部分主板都设置有为CMOS电池放电的跳线或DIP开关,我们只要按照主板说明书进行操作就行了。如果你的主板是老主板,没有CMOS电池放电跳线或DIP开关,或者你根本就找不到主板说明书,不知道哪组是CMOS电池放电的跳线,那么你干脆把CMOS电池拔下来,将其正负极短接放电或过一小时左右再装上(就是让CMOS长时间没有电能供应,让其自动清除内容)就行了。由于这种方法需要有一定的硬件知识,建议不懂的朋友不要轻易去做,如果要做,可以找一个懂一点硬件知识的朋友帮忙。 改变硬件的配置
当微机启动时,固化的BIOS程序首先要检查机器的硬件配置是否和CMOS中设置的参数一致。当有冲突或不一致时,开机后便会自动进入Setup设置程序,而不需要输入密码。利用这个原理,我们可以打开机箱,变动一个硬件配置以达到自动清除密码的效果。步骤如下:
(1)打开机箱,改变机器的原有配置,比如把声卡拔下或软驱数据线断开等。
(2)重新启动计算机,机器自动进入Setup程序后,你就可以重新设置CMOS密码了。
(3)重置CMOS密码后,按F10保存设置,重新启动机器,以使设置生效。
软件大法
借助软件(例如PCTOOLS和NORTON)是很容易把CMOS密码给清掉的。下面举两个简单的实例:
1.BOOTSAFE (BOOTSAFE.EXE在PCTOOLS 9.0中可以找到)
运行BOOTSAFE C:/M,将CMOS信息和引导区信息备份到空白软盘上,形成CMOS.CPS和CBOOT.CPS两个文本文件,再用EDIT之类的编辑器将CMOS.CPS任意修改一些内容,存盘后用该盘启动,运行BOOTSAFE C:/R,系统会询问是否从软盘恢复CMOS数据(回答YES)和是否从软盘恢复分区表数据(回答NO),最后重新启动,此时CMOS中所有内容已被清除。
2.RESCUE (RESCUE可在NORTON 8.0中业?
用NORTON的RESCUE功能制作一张应急盘,同样使用EDIT之类的编辑器任意地修改应急盘中CMOS.DAT文件的内容,存盘后用应急盘启动。再运行应急盘中的RESCUE.EXE,在ITEM TO RESTORE中选择恢复CMOS信息(CMOS Infomation)一项,完成后重新启动,亦可达到目的。
3.BiosPwds(可以到这个网址:http://nj.onlinedown.net/BiosPwds.htm下载它)
BioPwds可以让你很轻松地得知BIOS密码。使用上也相当简单,运行此工具后会有BiosPwds工具的使用界面,只需按下界面上的「Get Passwords」,等个两三秒即会将BIOS各项资讯显示于BiosPwds的界面上,包括:BIOS版本、BIOS日期、使用密码等,这时你便可以很轻松地得知BIOS密码。
ASCII大法
若你不想下载软件,又不愿意打开机箱,更不愿意更改硬件配置,下面的方法相信可以帮助你破解和恢复BIOS密码:
1.进入MS-DOS环境,在DOS提示符号下输入EDIT并回车(若你发现按EDIT 出现错误,就是说你没有edit.com这个文件,请看下一条方法),输入:
ALT+179 ALT+55 ALT+136
ALT+216 ALT+230
ALT+112 ALT+176 ALT+32
ALT+230 ALT+113
ALT+254 ALT+195 ALT+128
ALT+251 ALT+64
ALT+117 ALT+241 ALT+195
注:输入以上数据是先按下ALT 键,接着按下数字键盘里(按键盘上面那一排数字键是没有作用的)的数字键,输完一段数字后再松开ALT 键,然后再按下ALT键。在操作过程中,屏幕上会出现一个乱字符,我们不用管它。然后在file目录下选择save,保存为 cmos.com ,接着退出到 MS-DOS 环境下,按找到 cmos.com 这个文件,看看他是否是 20 个字节,若不是就说明你打错了,须重新输入。 确认后,直接运行 cmos.com 便可清除CMOS的所有数据(当然包括密码)。
2.这个方法直接在MS-DOS环境下便可完成,在MS-DOS环境下输入:
COPY CON CMOS.COM
然后回车,继续输入:
ALT+176 ALT+17 ALT+230 p ALT+176 ALT+20 ALT+230 q ALT+205 <空格>
然后按“F6”,再按回车保存,运行 cmos.com文件后,重新开机即可。
至此,BIOS密码的解密和恢复的方法给大家介绍完毕。笔者撰下此文的目的是想为大家介绍一些关于BIOS密码应急处理的方法,并且提醒大家,破解和恢复CMOS密码并不像大家想像的那样复杂。
,