QQ号码列表里的秘密
我们在一台电脑登录过QQ之后,下次启动QQ的时候就会看到在号码列表的下拉菜单中会出现这个号码,这些号码实际上都保存在QQ安装目录的“dat\oicq2000.cfg”文件里,用记事本打开这个文件就会看到所有保存过的号码了。为了防备这种登录软件,有人建议删除“oicq2000.cfg”文件,其实这是完全没有必要的,只要删除了相应的号码文件夹就可以了。否则,一用QQ就要重新启动注册向导,岂不是很麻烦。
一、发现秘密
删除了QQ的文件夹之后就OK了么?我们还是来研究一下这个“oicq2000.cfg”文件吧。用任何一种16进制编辑器打开这个文件(推荐使用UltraEdit),假如我们打开一个保存有(123456、222222、333333、444444、745370)5个号码的“oicq2000.cfg”文件,就会看到如图1的内容。说明一下,第九位的“05”表示这个列表文件中共有5个号码,之后用3个“00”做分隔符,之后的“06”是列表中第一个QQ号码的位数(16进制的31 32 33 34 35 36正好是1 2 3 4 5 6)。紧跟其后的就是下一个QQ号码的位数,如此循环,最后几位就是列表中最后一个QQ的号码。
大家都知道QQ有个功能叫做“记住密码”,选择了该项之后下次启动QQ便可以直接登录而不用自己输入密码,其实这个功能简直就是QQ自杀术。假如我们上面的列表中号码123456的密码为my7g.com,保存之后我们再打开列表文件,发现变化了么?第一位变为了01,其实第一位是个判断符号,00表示未保存密码,反之01就是保存了密码,然后是分隔符,接着的08表示保存的密码的位数,然后是分隔符,接着就是保存的密码了,这8位是“92 86 c8 98 d1 9c 90 92”,我们的密码是my7g.com,字符的ASCII码的16进制值应该是“6d 79 37 67 2e 63 6f 6d”,对比一下:
92 86 c8 98 d1 9c 90 92
6d 79 37 67 2e 63 6f 6d
发现什么了(什么都没发现?再看看!)?上面的每一位和下面相对应的相加都是FF,所以,只要是保存到“oicq2000.cfg”文件中的密码都是可以轻易地被破解的。这下你害怕了吧?这可比被人用“QQ穿墙术”看你的聊天记录更可怕。
二、解决方法
别担心,送你个软件防防身。在http://my7g.com/guard下载一个“QQ列表大师”,该软件只有27K,VB6制作,无须安装,复制到QQ安装目录即可运行。启动后自动检测列表文件,发现保存的密码会作出警告,并将密码显示在程序主界面。该软件还可以帮你完全自己定制QQ号码列表文件(这下子不用去算什么16进制了),并且可以帮你清除保存的密码。选定了号码之后如果同时选择了删除文件夹的复选框之后点击删除按钮的话,还可以在列表中删除号码的同时删除该号码的文件夹,这下子你放心了吧?更厉害的是该软件可以在没有“oicq2000.cfg”文件的情况下自己生成一个列表文件。