“CMOS密码”就是通常所说的“开机密码”,主要是为了防止别人使用自已的计算机,设置的一个屏障,(本文只作忘记时使用,不得用于恶意目的)
“CMOS密码”破解方法很多,主要有以下几种:
一、更改硬件配置
当丢失CMOS密码时,你可以先试着改动机器的硬件后再重新启动,因为启动时如果系统发现新的硬件配置与原来的硬件配置不相同,可能会充许你直接进入CMOS重新设置而不需要密码。改动硬件配置的方法很简单:比如拔去一根内存条或安装一块不同型号的CPU(当然要主板支持)、更换一块硬盘等。
二、建立自已的密码破解文件
A. 当系统自检完毕,准备引导Windows时按下F8键,选择“Safe mode command prompt only”(安全命令模式)后在DOS提示符下输入COPY CON YK.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后按F6保存。注意,输入以上数据时是先按下ALT键,接着按下数字键盘里(按键盘上面那一排数字键是没有作用的)的数字键,输完一段数字后再松开ALT键,然后再按下ALT键输入下一段数字…… 输入过程中,每松开一次ALT键屏幕上都会出现一个乱字符,我们不必管它。
保存退出后,我们直接运行YK.COM这个文件,屏幕上应该没有任何提示信息,然后重新启动计算机即可清除CMOS里的密码,当然,CMOS里的其它设置也会同时被清除,这就需要我们重新设置了。
B.启动时选择安全命令模式后,输下COPY CON YK.COM,然后在编辑环境里输入:
ALT+176、ALT+17、ALT+230、p、ALT+176、ALT+20、ALT+230、q、ALT+205、空格 后按F6保存后运行这个文件,重新启动计算机即可。
三、DEBUG法
在DOS提示符下,运行DEBUG后输入:
—o70 18
—o71 18
—q
或
—o70 21
—o71 21
—q
退出到DOS提示符后重新启动计算机便将CMOS密码完全清除了。请注意,70和71是CMOS的两个端口,我们可以向它们随意写入一些错误数据(如20、16、17等),就会破坏CMOS里的所有设置,有时间的朋友不妨多用几个数据试试。
四、万能密码
如果有人将COMS里的安全选项设为系统,那么当你每次开机时都必须输入正确密码,否则别说进入Windows,就连DOS也进入不了,这样我们就只能靠万能密码来解决问题了。
AMI 的BIOS: AMI ;Sysg
AWARD的BIOS: award ; Syxz; h996; wantgirl;eBBB ; dirrid 。
以上万能密码在386、486、奔腾主板上破解CMOS口令几乎百发百中,而对PII级或以上的主板就不那么灵光了,能破解PII以上的新主板的万能密码很少,几乎还没有听说过,不过小弟找到一个口令——abaubjao,已成功破解了承启6ATA4(PIII)、伟格MVP4(K6—2)、奔驰160A、160A+(PIII)等十余块主板上的CMOS口令,不敢独享,在此献给大家。
五、使用工具软件
在网上你会发现能破解CMOS密码的软件比比皆是,俺认为最好用的软件要数Biospwds,它是一个德国人做的小软件,使用时只需轻轻一点“Get passwords”(获得密码)按钮,你的CMOS密码便尽显于屏幕之上了,此外你还可以看到BIOS版本、时间等信息。有条件者可在www.geocities.com/mbockelkamp处下载。
转贴者注:其实还有很多好用的Cmos解密的软件。当然以Dos软件为主了。
推荐:1。cmos.com 只有630字节!放在启动盘里最合适不过了。用法:
cmos /c /s /r (/c为清除密码,/s 为存储cmos信息到文件 /r为从文件里恢复cmos信息。)
2。cmos.exe 54904字节。记不清了。在win2000下没法试用。所以,抱歉。
3。cmospwd.exe 13035字节。 最好用的最强大的破解cmos的工具。前面的cmos.com只能算是绕过cmos密码,而这个能算出与你原来设置的cmos密码相当的密码来。(由于cmos密码的特殊性,所算出的不一定与你原来设置的一样,但同样可以用,具体的介绍请自己去找相关资料看看就知道为什么)
六、放电
如果你运气太差,用以上方法都破解不了CMOS口令,那就只有这一条路可走了。翻开主板说明书,找到清除CMOS设置的那个跳线,按说明书所述改变其短接的方法,清空CMOS。什么,你的主板太老,没有此跳线? 那就将主板上那块钮扣电池取下来吧。 放电后怎么开不了机? 将电池安回去嘛,笨!
[ Last edited by ko20010214 on 2008-10-22 at 00:50 ]
Gemini 解答
这是一篇在 2000 年代初期中文互联网上流传甚广的 CMOS 密码破解指南,反映了当时硬件维护和系统管理的常用技术。通过解析该帖子中的各个方法,我们可以从技术原理的角度对其有效性和局限性进行补充与纠正。
一、 关于“更改硬件配置”的误区
帖子中提到的“拔掉内存或更换 CPU 后可能允许直接进入 CMOS”在特定历史时期的 BIOS 实现中确实存在。某些早期的 BIOS(如 386/486 时代的部分版本)在检测到严重的硬件变更时,会触发“CMOS Checksum Error”或“Configuration Error”,为了让用户修正参数,系统有时会自动跳转至 Setup 界面并跳过密码验证。
然而,这并非标准设计。绝大多数 BIOS 在自检发现硬件变动后,依然会要求输入 Supervisor Password(管理员密码)才能修改设置。在 PII 时代之后的现代主板上,这种方法基本失效。
二、 DEBUG 法与
COPY CON生成 COM 文件的原理帖子中提到的
COPY CON YK.COM方法和DEBUG手动操作,本质上是同一类操作:向 CMOS RAM 写入随机或无效数据,人为制造校验和错误(Checksum Error)。
- 技术背景: CMOS RAM 是一块 64 字节或 128 字节的非易失性存储区,通过主板电池供电。它在 I/O 端口
70h(索引端口)和71h(数据端口)上进行访问。- 指令解释:
o 70 10和o 71 10(或帖子中的18,21等)的意思是:
- 向端口
70h发送偏移量(如10h)。- 向端口
71h发送一个数值(如10h)。 由于密码及其校验码存储在这些地址中,通过这种方式修改 CMOS 的内容会破坏原有数据的完整性。- 结果: BIOS 在下次开机自检时,会计算 CMOS 数据的校验和。如果计算结果与存储在 CMOS 中的校验码不符,BIOS 会提示“CMOS Checksum Bad - Default Loaded”,并强制恢复出厂默认值。因为默认值通常不包含密码,所以密码被成功清除。
三、 万能密码(Backdoor Passwords)的局限
帖子中列举的
award,AMI等万能密码在 1990 年代中期的 486 和早期 Pentium 主板上非常有效。这是 BIOS 厂商为了售后维护方便而预留的“后门”。
- 技术演变:随着安全意识的提高,BIOS 厂商逐渐取消了固定字符的万能密码。
- Hash 算法偏移:后来(尤其是笔记本电脑和 PII 之后的主板)引入了基于挑战码的加密方式。如果输入三次错误,系统会给出一个代码(如
Encrypt Key: 12345),必须通过特定的算法工具计算出对应的临时密码。这就是为什么帖子中提到的abaubjao仅在特定品牌(如承启、伟格)的部分型号上有效,因为这些主板可能共用了同一套 BIOS 开发包。四、 软件工具与 Biospwds
Biospwds和CmosPwd是当时著名的黑盒测试工具。
- 工作机制:它们并不是暴力破解,而是读取 CMOS RAM(通过
70h/71h端口)中的加密字节。由于早期的 BIOS 密码加密算法极其简单(通常是简单的 XOR 异或或位移运算),这些工具可以逆向出原始密码。- 为什么计算出的密码不一样?:某些 BIOS 算法存在多解性(哈希碰撞),即不同的字符串经过同一套算法处理后,生成的存储字节序列是一样的。因此,软件算出的“等效密码”也能让 BIOS 校验通过。
五、 物理放电与硬件跳线
这是最彻底的“工程级”方案。
- Clear CMOS 跳线:这是官方提供的重置手段。其原理是将存储 CMOS 信息的 SRAM 供电脚对地短路,从而瞬间丢失电荷。
- 扣电池:这是在没有跳线时的替代方案。需要注意的是,由于主板电容的存在,单纯取下电池可能需要等待数分钟甚至数小时才能彻底放电。在当时,经验丰富的技术人员通常会建议取下电池后,用导线短接电池座的正负极触点以加速放电。
- 注意点:如 Post #4 所言,放电后必须将电池装回或将跳线恢复原位,否则主板可能因为无法维持基本配置数据而导致每次开机都需要重新设置主频、硬盘参数和时间。
总结与现代环境差异
上述方法主要针对的是 Legacy BIOS 环境。对于现代使用 UEFI 固件的主板:
- 密码通常存储在 SPI Flash(闪存) 中,不再依赖电池供电,因此拔电池放电的方法对清除 UEFI 密码无效。
- 现代主板通常设有专门的物理跳线或特定的硬件校验机制,只有通过物理接触主板才能重置设置。
- 软件层面在现代操作系统(如 Windows 10/11 或 Linux 现代内核)下由于端口访问受限,直接在系统内运行
DEBUG或 I/O 操作清除密码通常会被操作系统拦截。
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器

精华I






