龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

自己写程序揭开cmos密码

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
一说到破解cmos密码,你可能说,咳,这有什么难的,用debug o 70 20 o 71 20 不就地了吗。 慢~~~,以上这种方法是通过向cmos芯片随便写入数字,使之在开机检测时无法通过奇偶校验导致cm

  一说到破解cmos密码,你可能说,咳,这有什么难的,用debug

  

o 70 20

  

o 71 20

  

不就地了吗。

  

慢~~~,以上这种方法是通过向cmos芯片随便写入数字,使之在开机检测时无法通过奇偶校验导致cmos芯片数据重新初始化,自然密码也没有了,但是这种方法是破坏性的(暴力!),清除的不止是密码而已,cmos芯片的其他数据,包括cpu频率,ide借口设备等等都被清除了,而且,最重要的一点就是--在你破掉密码之后,别人就知道密码被破解了。这绝对不符合我们的原则---"我轻轻的走,正如我轻轻的来,敲一下esc,不留下一个足迹....". 而用程序将cmos密码读出,绝对不会留下一点痕迹.

  

原理如下:award密码存在cmos芯片的0x1c,0x1d处的两个字节中,将这两个字节的数据读出来,用四进制表示,就是密码了.

  

以下为c语言的源程序:

  

  

代码:

  

--------------------------------------------------------------------------------

  

  

#include

  

#include

  

#include

  

  

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有效.

  

精彩图集

赞助商链接