穷追猛打:破译Foxmail“密码天书”_漏洞研究

  笔者最常用的邮件客户端软件是Foxmail5.0,相信许多人也在用它,因为它的界面简洁、功能强大。在使用Foxmail的过程中发现一个问题,即Foxmail邮箱密码不够安全!而且这个问题在Foxmail 4.x和5.0正式版(包括测试版)中都存在,在这里提醒大家注意保管好自己的密码。 

  Foxmail邮箱加密密码保存在哪里 

  在正式开始以前,先说说在Foxmail中邮箱口令保存在哪里。右键点击你的账户(假设账户名为abcde),在弹出菜单中选择“属性”,然后点击“邮件服务器”,在这里你会看到以“*”号显示的邮箱密码(图1)。 

  用任意一款密码查看软件就可以发现“*”号中是什么内容。其实,即便不使用查看*号工具也可看到Foxmail的密码! 

   

  当选择保存邮箱口令后,邮箱密码加密后的密文保存在一个文件中,这个文件位于Foxmail安装目录下的Mail文件夹(如果采用默认安装方式,一般在C:\ProgramFiles\Foxmail下),那里有个以你的账户名为名字的文件夹(如账户名为abcde,则Mail文件夹下有个abcde文件夹),其下有个accounts.cfg文件,打开它就会看到你的邮箱密码密文。 

  再现一个众所周知的Foxmail漏洞

  大家都知道,打开“资源管理器”或“我的电脑”,找到Foxmail文件夹,打开里面的“Mail”文件夹,你会发现这里有许多以账户名命名的文件夹,进入Mail文件夹下你想侵入的账户对应的文件夹,将其中的account.stg文件更名或删除,然后运行Foxmail,你会发现该信箱上原来的小“锁头”不见了(加有口令的账户会带有红色小“锁头”标志)!此时不需要任何密码就可以看到被保护的信件! 

  为什么将Account.stg这个文件复制到别人的账户文件夹下,就有这么大的“威力”呢?用“记事本”打开该文件看看就明白了(图2)!事实上,你在Foxmail的“帐户→属性”菜单中设置的所有内容几乎都包括在其中了(如果你细心的话,会发现“属性”中的“模板”并没有包含在内),其中也包括了经过加密的信箱密码密文,也就是“POP3Password=”后面的部分。下面我们就谈谈这个令人感兴趣的话题。 

  Foxmail分析 

  先假设你在Foxmail中有且仅有一个账户:abcde,它的E-mail地址是abcde@163.net,这个信箱的密码是12345。 

  用记事本打开accounts.cfg文件,一开始是一些乱七八糟的内容,再往下你会看到如下所示内容: 

  MailAddress=abcde@163.net //这是邮件地址 

  ……………………………… 

  POP3Account=abcde 

  POP3Host=pop.163.net //POP3服务器地址 

  POP3Password=BB6DFB5DF061 //邮箱密码加密后显示的密文 

  POP3Port=110 //POP3服务器端口 

  PrintFont=宋体,9 

  ReplyAddr= 

  ReplyFormat=1 

  SameWithPop=1 

  SMTPHost=smtp.163.net //SMTP服务器地址 

  SMTPPort=25 //SMTP服务器端口 

  …… 

  在计算Foxmail邮箱密码明文之前,请你先记住一个单词:~draGon~(注意要区分大小写),它是Foxmail邮箱密码的加密密钥。记住后我们开始行动: 

  第一步:下载一个十六进制文件编辑器UltraEdit,这是一套极棒的文字、Hex、ASCII码编辑器,内建英文单字检查、C++及VB指令突显,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。其并且附有HTML Tag颜色显示、搜寻替换以及无限制的还原功能;一般大家常会用其来修改EXE或DLL文件。大家可以在这里下载到它:http://software.wx88.net/down/cuedit1010b.exe。安装完毕,运行UltraEdit,在它的文件编辑状态下输入“~draGon~”这个单词(没有引号),然后单击“Edit”(编辑)菜单下的“Hex Edit”(16进制编辑),可以查到这个词的16进制编码(图3),为:7E 64 72 61 47 6F 6E 7E,分别记为a1,a2,a3,a4,a5,a6,a7,a8,我将它们称之为Ai。

   

  第二步:再记住一个恒定的值:5A(其实也是由上面的a1~a8计算而来,具体方法就不多说了),记为C0,这个C0我们在下面会用到。 

  第三步:取邮箱密码加密后的密文,在本例中为:BB6DFB5DF061,将它们两两分开,得到:BB,6D,FB,5D,F0,61,分别记为b1,b2,b3,b4,b5,b6。由于此加密密文的总长度为12,所以我们可以判断邮箱真正地密码长度为12÷2-1=5,即邮箱密码为5位。 

  第四步:计算Ci的值(Ci为一系列数的总和,即C1,C2,C3,C4,C5……)。其中,C1由C0(即16进制的0x5A)和第一位密文(即b1,也就是我们这个例子中的BB)经异或运算得来。由于C0=0X5A,所以C1=C0^0XF9=0xE1,其中“^”代表异或运算。大家可以使用Windows自带的计算器来进行计算,点击“开始→程序→附件→计算器”即可打开计算器(图4),计算器中的“XOR”就代表异或运算。由此得到: 

  C1为0xE1 

  C2由b2直接继承得到,为0x6D 

  C3由b3直接继承得到,为0xFB 

  C4由b4直接继承得到,为0x5D 

  C5由b5直接继承得到,为0xF0 

  这样,我们就得到了至关重要的参数Ci。 

  第五步:下面请大家用从第二位起的密文(即b2)和密钥对应的ASCII码(即Ai)作异或运算,由于我们已经知道密码为5位,所以用a1~a5分别与b2~b6进行异或运算,得到Di(即D1~D5这5位数)。在我们这个例子中,可以得到: 

  D1=b2^a1=6D^7E=13 

  D2=b3^a2=FB^64=9F 

  D3=b4^a3=5D^72=2F 

  D4=b5^a4=F0^61=91 

  D5=b6^a5=61^47=26 

  如果密文很长(Foxmail最多允许18位密码),该怎么办呢?还是用上面所说的方法。只是在计算Di时要循环利用Ai的值。举个例子,假设密文两两分开后有10位这么多(即B1~B10),则计算D8时用B9与A8异或,计算D9则用B10与A1异或。明白了吗?即密文长度大于密钥长度,则循环利用密钥进行计算。 

  第六步:这是最后一步,求解出账户密码明文。用Di-Ci得到Ei,其中Ei就是密文解码后的明文。注意,如果Di小于Ci,则要用Di+0xFF(0xFF为16进制的FF,即十进制的255),然后再减去Ci即可。好了,赶快打开计算器,然后可以得到: 

  E1=D1-C1=31,转为十进制为1 

  E2=D2-C2=32,转为十进制为2 

  E3=D3-C3=33,转为十进制为3 

  E4=D4-C4=34,转为十进制为4 

  E5=D5-C5=35,转为十进制为5 

  将上面的结果串联起来,就是12345,而这正是我们当初设定的邮箱口令!怎么样?Foxmail的密文不安全吧! 

  上面的过程说起来麻烦,而且好像不容易理解,将上述Ai、Bi、Ci、Di列个表(图5),然后再按上面说的自己动手试试就很容易搞清楚了!与我们事先设定的完全一样!从此可以推断~draGon~就是Foxmail的密钥!仔细想想,从Foxmail的原作者“张小龙”的名字不难推断到这个结论,因为“龙”字的英文单词为“dragon”。那么我是如何发现“~draGon~”这个单词呢?用UltraEdit打开Foxmail的主程序Foxmail.exe,点击“搜索→查找”(或直接按Alt+F3),输入dragon,在UltraEdit中搜索到的第一个词就是“~draGon~”! 

   

  注意,上文中提到的Ai、Bi、Ci、Di和Ei都是十六进制数值,大家一定要搞清楚,不要弄混了。对了,得到了Ei之后,不要忘记按位分别转化为十进制,这才是真正的邮箱密码!另外,即便是同一个邮箱,在更改了密码并保存之后,下一次再改回原来的密码,你在accounts.cfg文件中看到的邮箱密码密文也会不一样,但用本方法计算下来之后结果不会变,也就是说你仍能用本方法得到你的密码。 

  防范方法 

  上面介绍了Foxmail密码的破解,方法非常的简单,所以在大家共用一台电脑的场所,建议不要将自己的邮箱密码保存下来,如果已经保存下来,可以采用下面的解决方法:在新建账户时不要选择保存密码,如果已经选择了,可以右击账户,在弹出菜单中选择“属性”,会出现“账户属性”窗口,选择“邮件服务器”,然后,将“密码”栏中的密码清除即可。这样,当你再打开account.stg文件时,会发现“POP3Password=”后面是空空如也,这样就不怕别人发现你的密码了。同时,建议Foxmail的开发商能改变加密算法,使得软件能更安全。 

  最后提醒大家不要用本文所涉及的内容干破坏,这不是笔者的初衷,切记:己所不欲,勿施于人!

时间: 2024-09-20 08:02:40

穷追猛打:破译Foxmail“密码天书”_漏洞研究的相关文章

穷追猛打:破译Foxmail"密码天书"

笔者最常用的http://www.aliyun.com/zixun/aggregation/12490.html">邮件客户端软件是Foxmail5.0,相信许 多人也在用它,因为它的界面简洁.功能强大.在使用Foxmail的过程中发现一个问题,即Foxmail邮箱密码不够安全!而且这个问题在Foxmail 4.x和5.0正式版(包括测试版)中都存在,在这里提醒大家注意保管好自己的密码. Foxmail邮箱加密密码保存在 哪里 在正式开始以前,先说说在Foxmail中邮箱口令保存在哪里.右

当备份数据库不能用时.用邮件列表得到WEBSHELL!(图)_漏洞研究

今天上午闲着无聊,刚好一个朋友发过来一个网站的后台管理密码.他要我帮他看看.我说你得到后台了.可以用备份数据库功能得到WEBSHELL啊.你还发过来干嘛.他说后台有数据备份的选项.但是不能用.大家看一下图!  列表得到WEBSHELL!(图)_漏洞研究-数据库备份拿shell">  里面有备份的选项.但是点了之后出现错误!应该是管理员把文件改名了.或者是位置改变了.不能备份数据库,那怎么办,不能白白的浪费这样的一个机会.我就在后台里面到处看了一下.发现可以通过改网站注册用户的邮件地址.我们

再探九酷网络个人主页空间管理系统_漏洞研究

本文作者:玄猫[B.C.T]  本文原发表于<黑客X档案>2005年第7期,网上首发地址为B.C.T(http://www.cnbct.org/showarticle.asp?id=495)和黑色森林(http://www.blackwoosd.cn)  本文版权归<黑客X档案>和作者杂志社所有   --------------------------------------------------------------------------------  玄猫在2004年12

破解别人的asp木马密码的方法_漏洞研究

    破解目标:破解一asp木马的经过加密的登破解asp木马密码陆密码.由于木马里没有版本说明,具体也不知道这木马叫什么名.      破解思路:两种,用加密后的密码替换密文和利用密文及加密算法反解出密码.前者根本算不上真正的破解.      破解目的:没事破着玩.      如果得不到asp源代码,那么可以说对破解密码,我毫无胜算.有位华夏的朋友说他得到了一个web的权限,  但是无法修改主页,发现其中已经有个asp木马,但密码是经过加密的.那么就有了这篇动画了.好了,废  话太多了,那么,

专家观点:破解MD5和SHA-1不意味密码破解(图)_漏洞研究

有关山东大学王小云教授破解MD5和SHA-1的报道,让人对电子信息的安全性颇为关注,真相究竟如何? 要问当今众生,在日常生活中什么对你最重要,什么让你最头痛?相信很多人的回答是密码."请您输入密码,请再输一遍",无论是在银行柜台还是在网上冲浪,这样的提示对我们已是司空见惯.银行密码.登录密码.邮箱密码.各种游戏的密码.各个用户名的密码--密码已是世人生活中不可或缺的一部分.最近有关山东大学王小云教授破解MD5和SHA-1报道频频见诸报端,使人们对电子信息的安全性颇为关注,密码真的不可靠

视窗操作系统密码体系的弱点及对策(图)_漏洞研究

一.问题的提出        本文仅就此处所列的几个在实际工作里发现的问题,对目前普遍使用的视窗操作系统里隐藏的几个有关密码体系的危险弱点进行了分析并给出相应对策,这些危险弱点导致的计算机安全隐患,希望能引起相关用户的重视.   1.视窗操作系统"用户登录"对话框问题   图A是大家熟悉的"用户登录"对话框:   图A          大家都知道,只要愿意,现在可以通过很多能方便从互联网上下载的实用程式对图A所示的"TesT"用户进行"

对Serv-U 6.0.0.2默认帐户及密码的一点理解_漏洞研究

今天获得一个webshell.发现了serv-u目录.看了下ServUDaemon.ini  [GLOBAL]  Version=6.0.0.2  OpenFilesDownloadMode=Exclusive  PacketTimeOut=300  LocalSetupPassword=ah6A0ED50ADD0A516DA36992DB43F3AA39  6.0.0.2版的.曾经看到哪说6.0版的默认本地管理帐号和密码依旧是原来那个.可又好像听谁说过6版的密码已经改了..  呵.这里发现.多

为动网论坛添加一个密码嗅探器(DVBBS)_漏洞研究

动网先锋论坛,凭借其强大全面的功能,再加上它免费提供给个人用户,在网络众多论坛中,独树一帜.很多人都把它作为自己论坛的最佳首选.但是新版本的论坛,对用户密码采用了不可逆的MD5加密,即使是管理员,也无法查询到个人用户的密码.再数据库中只能查询了加密后的结果.   先描述一下它得登陆过程,用户输入帐号后号,调用MD5函数,输入的密码加密,然后比较存储在数据库的数据和密码加密的结果是否相同.如果相同,登陆成功,将个人信息保存在COOKIE中.   现在我们要自己动手,为论坛增加一项记录密码的功能. 

webshell权限提升技巧_漏洞研究

WEBSHELL权限提升技巧 c: d: e:.....  C:\Documents and Settings\All Users\「开始」菜单\程序\  看这里能不能跳转,我们从这里可以获取好多有用的信息比如Serv-U的路径,  C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\  看能否跳转到这个目录,如果行那就最好了,直接下它的CIF文件,破解得到pcAnywhere密码,登陆  c:\Pro