-
您的位置:首页 → 网络冲浪 → 系统安全 → 浅谈Win2000密码的必然破解
浅谈Win2000密码的必然破解
时间:2004/10/15 0:55:00来源:本站整理作者:蓝点我要评论(0)
-
很多人都向往做黑客,黑客的很多工作其实都是破解密码,当然是别人的。本文纯粹是从理论上论证任何密码在有限时间的可破解性。如果我告诉你这样的事实:"Win2000的任意20位以内的密码最多也只需要2小时就可以破解",你一定惊讶地当场吐血,对我怒目相向。下面看我的论述。
任何破解密码的行为都可以归结到一个模型,适用于远程破解还是本地破解。本理论基于穷解法+做任何事情都要花费时间这样一个事实。下面建立模型:(这里把时间放大)有一间房子,房子的门用一台计算机控制,在门外安装类似于银行里面使用的密码输入器。因为一个密码的正确性必须通过比较来验证,现在假设对于每一个单个密码(A-C和B-C所用时间相等)的比较时间相同,用s表示;置位时间也相同,用T表示。密码由0,1,2,…,9这十个数的任意组合,假定密码是:874936。为了使实验具有可行性,主要是指人眼可以测定,不妨设s=5秒,T=10秒,密码错误返回F,正确则把门打开。
开始工作:让一个实验者站在门外,我们排除其它非主要因素。比较密码一位一位的比较:如比较ABCD与edfc是否相同,是用A与e相比,再用B与d相比,以此类推。现在给出计算机对于密码验证的两种机制:机制(1)初始化flag=1,如果遇到有一位不等,则flag=0,一旦flag=0,则立即返回F,后面的将不再比较,否则最终打开门;机制(2)初始化flag=0,用所给密码与正确密码一位一位比较,相等则不置位,只要有一位不相等flag变成1,以后的只比较而不置位,最后看flag=1则不开门,返回F,flag=0,则开门。
如果仔细研究计算机的工作原理,或者很多程序的工作原理基本上都是以上两种方式,而且第一种机制居多。我们还是从实际上出发研究看看其中有什么缺限可以利用。
8-0:s;flag=0:T ;t=s+T=15秒:F
以上写法表示用0来尝试。8与0比较用时s,置位用时T,总用时为s+T,其值为5+10=15秒。以下写法以此类推。
8-1:s;flag=0:T ;t=s+T=15秒:F
……(从0到7)
8-8:s;不置位; t=s=5秒:F
发现当用8来尝试时,计算机在t=s=5秒钟就返回F。而其它的用时都是s+t=15秒(包括用9来尝试,在这不写出来,只要发现用时不一样就停止,以下同。)可以断定正确密码的第一位就是8,因而取定第一位为8。第二步用两位密码来尝试。
8-8:s;7-0:s;flag=0:T;t=2s+t=20秒:F
……(从0到6)
8-8:s;7-7:s;不置位;t=2s=10秒:F
可以取定密码的第二位为7。
8-8:s;7-7:s;4-0:s;flag=0:T;t=3s+T=25秒:F
……(从0到3)
8-8:s;7-7:s;4-4:s;不置位;t=3s=15秒:F
可以取定密码的第三位为4。
8-8:s;7-7:s;4-0:s;9-0:s;flag=0:T;t=4s+T=30秒:F
……(从0到8)
8-8:s;7-7:s;4-4:s;9-9:s;不置位;t=4s=20秒:F
可以取定密码的第四位为9。
8-8:s;7-7:s;4-0:s;9-0:s;3-0:s;flag=0:T;t=5s+T=35秒:F
……(从0到2)
8-8:s;7-7:s;4-4:s;9-9:s;3-3:s;不置位;t=5s=25秒:F
可以取定密码的第五位为3。
8-8:s;7-7:s;4-0:s;9-0:s;3-0:s;6-0:s;flag=0:T;t=6s+T=40秒:F
……(从0到5)
8-8:s;7-7:s;4-4:s;9-9:s;3-3:s;6-6:0;不置位;t=5s=30秒:T(开门)
可以取定密码的第六位为6。
我们再回过头来看看整个过程用多少时间:
定8 :(8×15+5)=125 注意是8×而不是7×,因为是从0到7,是8个数,以下同。
定7 :(7×20+10)=150
定4 :(4×25+15)=115
定9 :(9×30+20)=290
定3 :(3×35+25)=130
定6 :(6×40+30)=270
总用时为:(8×15+5)+(7×20+10)+(4×25+15)+(9×30+20)+(3×35+25)+(6×40+30)=1080
即1080秒=18分
奇妙吧,只用18分钟就破解了一位6位密码,再看一看6位的最大用时为多少,即当密码是999999时用时最多:(9×15+5)+(9×20+10)+(9×25+15)+(9×30+20)+(9×35+25)+(9×40+30)=(140)+(190)+(240)+(290)+(340)+(390)=1590秒=26.5分。
这只是假定的s和T比较大的情况,实际问题都是s和T是比较小的,可能就是几个时钟周期。我们在这把时间放大就在于使时间具有人眼可测量性,如果在计算机上能精确测量任意两个时间的差,所有的密码都可能在很短的时间内破解。
为什么有人说6位以上的密码就很难破解呢?因为他只是从穷解法上考虑的,就是说,即使只用0,1,2,…,9做密码,6位的所有排列为10×10×10×10×10×10它是10的6次方。我们可以做一个比较直观的比较,如果每一次密码的尝试用时1秒,最大用时为:10×10×10×10×10×10/3600≈277年时间,我想你一般情况下是等不了277年的时间来看密码的结果的。而用我们以上的方法最大用时为:10+10+10+10+10+10=60秒,一分钟搞定。我们发现居然有天壤之别,即使使用计算机键盘上的字符来做密码,假定能使用300个字符(因为计算机的键盘只有一百多个键),最多用时为:300×6=30分钟。8位密码用时为:300×8=40分钟。20位密码用时为:300×20=100分钟。
怎么样?Win2000如果用机制(1)比较密码的话,是不是轻松搞定?
我们再看使用机制(2)能不能破解。还是以我们以上的模型来研究,我们只需比较一位密码,看时间上有什么区别:
因为密码为6位(874936),所以不足6位可以假定计算机用一个NULL,即空值来比较。
8-0:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-1:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-2:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-3:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-4:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-5:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-6:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-7:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
8-8:s;不置位;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s:F
8-9:s;flag=1:T;7-NULL:s;4-NULL:s;9-NULL:s;3-NULL:s;6-NULL:s;t=6s+T:F
可以看出来:用8来尝试时,时间比其它所用的时间少。因而第一位可以断定为8,事实上说明这种情况也是可以破解的。
事实上,计算机在比较密码的情况基本上都是以上两种情况。还有什么奇偶校验或者标志位的奇偶校验等,我想对于正确密码和错误密码的比较在时间都一定存在差别。就像我随便给一个数给你8293487879(8294387879,8293487879),你从肉眼发现8293487879:8294387879比较所用时间与8293487879:8293487879比较所用时间不一样。
因为Win2000的用户名很容易得到,只要拿到密码就可以完全控制win2000,本人现在只是从理论上论证了密码的可破解性,如果从实践上也可以实现的话,我想从此将结束win2000时代。欢迎大家从实践上去验证,或者对作者的论述提出疑义。作者的信箱:fenghuangsan@163.com。(千万别用彼之矛攻彼之盾。)读者可能问作者为什么不自己去验证,因为我没有时间,懒得理你。
相关阅读
Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
-
热门文章
没有查询到任何记录。
最新文章
U盘传播的病毒 _ U盘病打开U盘才不会中毒的方
alg.exe是什么进程?能不能关闭?nsis error是什么?及解决方法蓝屏错误代码解析 看代码解决问题dotnetfx.exe是什么
人气排行
alg.exe是什么进程?能不能关闭?qq修复工具怎么用如何更改ie收藏夹地址位置(路径)无光驱,无U盘启动,怎样重装系统?nsis error是什么?及解决方法Generic Host Process for Win32 开机后总是六种修复崩溃后WindowsXP系统的技巧exp1orer.exe 病毒清除办法
查看所有0条评论>>