月光博客

青青子衿, 悠悠我心, 但为君故, 沉吟至今

« Z-Blog文章投票评分插件Delicious变得越来越不好用了 »

MSN和Gtalk的本地密码存在严重漏洞

  我原先以为微软和Google在用户帐号安全上应该是专家,看来我又看走眼了,因为凑巧看到一款黑客工具MessenPass,可以直接显示本地MSN和Gtalk等聊天工具的密码,由此可以直接破解用户Hotmail和Gmail的密码,这显示MSN和Gtalk的本地存放密码的方式存在严重漏洞。

  MSN和Gtalk最为严重的错误,就是将用户的密码保存在本地,即使使用了对称或者不对称加密算法对密码进行了加密,但最终登录的时候,还是会解密密码并发送给服务器端,这个错误导致了黑客只需要将这个木马上传到用户电脑上,运行后就可以窃取用户的Hotmail和Gmail的密码。

  真正安全的密码存放方式其实很简单,就是不要存放原始密码到本地电脑,而是存放密码+用户+安全码的散列值(Hash值)到用户本地,就可以解决这个安全问题。不直接使用密码的散列值,而是使用这三个参数之和的散列值,是为了防止相同的密码出现相同散列值被人猜测,加入安全码可以增加破解难度,黑客需要先破解安全码,使用散列算法(如MD5或SHA1等)是因为散列算法是单向不可逆的,黑客即使得到散列数值,也不可能反算出用户的密码。

  这样,现在的登录方式,就可以修改为,MSN和Gtalk保存用户名和三个参数之和的散列值,登录时候传输这些参数到服务器,服务器端判断登录类型,如果是散列值登录,则将用户传送过来的用户名和散列值,与服务器端保存的用户名密码等参数算出来的散列值进行比较,如果相同则表示可以登录,不同则表示密码错误,不能登录。

  当然,此方法只是最基本的实现安全登录的方法,更详细的安全登录方法请参见我另一篇文章《网站的安全登录认证设计》。

  我以前一直以为微软和Google这些网络巨头在应用程序的安全性上应该是不错的,没想到竟然会在用户密码上存在这么严重的缺陷和漏洞,看来国外的产品也不可靠啊。这其中最主要的原因,我看是国外的整体网络发展较为健康,没有那种黑客生存的产业链,而在中国国内,黑客木马程序的开发和销售、盗取网络游戏帐号和QQ帐号、销售游戏帐号和QQ币等早已经发展成为一种分工明确的“地下产业”,早期已经令中国各大网络公司头痛不已,纷纷推出相应的安全解决方案,所以国内相关的网络软件,登录密码早就不存在这种缺陷漏洞了。

  对于Google来说,解决这个缺陷漏洞尤为紧迫,因为Gtalk帐号就是Google帐号,可以直接登录用户的AdWords和AdSense,操纵用户的财务信息,甚至将用户帐号下的金额转账给他人,这对于使用Google这些业务的用户来说实在是一个严重的威胁,如果不尽快解决,后果堪忧。对于当前使用MSN和Gtalk的用户,建议不要设置自动登录,而是设置为每次手动输入密码登录。



原创文章如转载,请注明:转载自月光博客 [ http://www.williamlong.info/ ]

本文链接地址:http://www.williamlong.info/archives/1506.html
  • 文章排行:
  • 1.小栋
  • 看来得小心我的G码了,月光提示很不错,哈哈
  • 2008-9-21 12:33:26   回复该留言
  • 2.超越梦想中原博客
  • chaoyuemengxiang.com
  • 哇塞,现在我坐沙发了。williamlong到底什么来头,能力这么强?据我了解,国内所谓的黑客有两种,一种是为了钱,另一种是好奇,觉得好玩刺激。当好奇到一定程度后可能就转到对钱好奇了。其根本原因还是在品德问题。
  • 2008-9-21 12:34:43   回复该留言
  • 3.爱燕博客
  • 啊,不是吧。后果严重啊!
  • 2008-9-21 13:06:09   回复该留言
  • 4.IwfWcf
  • 汗......这种工具有了很久了吧......
  • 2008-9-21 13:58:36   回复该留言
  • 7.365节日大全网
  • 貌似月光对网络太过了解了吧??
  • 2008-9-21 15:11:29   回复该留言
  • 8.白胖
  • 探讨一下,即使使用散列码存储和登录,如果能获取这个存在本地的散列或者截获发送给服务器的散列内容,一样能欺骗服务器进行登录。当然,这个避免了窃取密码以登录google其他服务的可能性,但是gtalk 和msn本身仍然可以被欺骗性地登录。
  • 2008-9-21 15:28:09   回复该留言
  • 10.ccc
  • 8楼说的对啊,拿到散列值跟拿到密码差别也不大了
  • 2008-9-21 15:48:41   回复该留言
  • 15.Siuloong
  • 好象在网络世界里,没有什么绝对安全
  • 2008-9-21 17:12:52   回复该留言
  • 16.阿布
  • 关键是上传木马到用户电脑不是这样简单的!~这样来说其他很多木马类程序可能更直接,比如直接盗你网银的木马
  • 2008-9-21 18:10:08   回复该留言
  • 17.HenryHu
  • 有了散列值,登录之后有可能可以改密码啊……
    原来这个就是改密码的时候要求输入原密码的原因……
  • 2008-9-21 18:12:47   回复该留言
  • 18.无名
  • 这种工具早就有了
    包括上网帐号密码
    邮件客户端密码
    只要保存了
    都可以自动获取的
  • 2008-9-21 18:30:06   回复该留言
  • 20.williamlong
  • williamlong.info
  • 引自 ccc
    8楼说的对啊,拿到散列值跟拿到密码差别也不大了

    差别不大,你觉得用户能登录Gtalk和能登陆Adwords和Adsense差别不大吗?使用散列值至少不能让黑客登录一些关键性的Google服务。
  • 2008-9-21 19:32:27   回复该留言
  • 23.Doll
  • Gtalk推出的当天它的密码算法就被推出来了. 这没什么, 除非通过比较特别的手段获取. 因为GTalk的密码是存储在注册表的HKCU下的, 估计权限比较麻烦才能获取到. 如果能获取到这个权限, 拿密码的作用也不大了.
    另22:QQ的密码算法散列不一样, 是HASH和服务器的校验, 无法还原到实际的密码.
  • 2008-9-21 20:43:12   回复该留言
  • 25.xing
  • 这些软件全中国几乎没几个用,无聊
  • 2008-9-21 21:10:23   回复该留言
  • 26.一亿度
  • blog.yiyidu.com/
  • AdWords和AdSense这个确实很重要,所以最好是使用不同的Google帐号,比如我,就有三个Google帐号,MSN号更是六七个,当然常用的也就两个。
  • 2008-9-21 21:26:42   回复该留言
  • 28.流星
  • hypfx.com
  • 国外黑客也很多啊,比如俄罗斯黑客啊
    美国之前也发生过信用卡丢失案例啊
    我觉得,中国的黑客产业链还处于相对低端,因为用户使用习惯问题
    当中国大量人开始使用信用卡消费时候,类似事件就会更多了
  • 2008-9-21 21:35:23   回复该留言
  • 34.ewayren
  • 我的adsense和gmail是分开的,呵呵!
  • 2008-9-22 8:33:55   回复该留言
  • 36.xiaoqi
  • dna-china.com
  • “存放密码+用户+安全码的散列值(Hash值)到用户本地,就可以解决这个安全问题。”
  • 2008-9-22 8:48:45   回复该留言
  • 37.程远志
  • "这其中最主要的原因,我看是国外的整体网络发展较为健康,没有那种黑客生存的产业链"

    这句话很不认同啊

  • 2008-9-22 9:08:45   回复该留言
  • 39.takwai
  • 很久之前都是这样子了,也许国外盗取MSN和Google账号的木马是少数吧,不像的QQ这么多。

    所以这两家的密码问答设置只要知道密码就能改掉…一点安全性都没。
  • 2008-9-22 10:47:41   回复该留言
  • 41.dosou
  • 恐怖呀!看样子,以后得注意安全了
  • 2008-9-22 11:36:04   回复该留言
  • 43.yujian
  • 哇,月光连密码学都会,你是什么人阿?
  • 2008-9-22 15:00:03   回复该留言
  • 44.在
  • 放本地和网络上的密码是有些不同,可惜这不能叫严重漏洞,甚至连漏洞都算不上.
  • 2008-9-22 15:40:40   回复该留言
  • 46.BlueDrifter
  • keomars.com/
  • “Google推出KeyCzar软件加密工具”

    没有想到Google还发布加密软件,结果后院起火,竟然……
  • 2008-9-22 23:20:51   回复该留言
  • 47.网页游戏联盟
  • 还好我的Gmail安然无恙……
  • 2008-9-23 9:40:32   回复该留言
  • 50.cid
  • 不是很清楚MSN现在的验证方式,以前玩过MSN4.0时的协议,并不是直接传密码到Server的。以正常的登录过程来说,
    1.MSN Client向Server发出登录请求,Server返回一个16位MD5串
    2.MSN Client用MD5算法把这个串和密码生成散列,并连同用户名一起发送到Server, Server验证散列串而不是直接验证密码。
    那么为什么密码能得到破解?
    第一个可能,微软修改了原来的登录协议,在Http包中被检测,可这种可能性实在不大。
    第二可能,密码保存在本地时,加密强度不够,直接被破解.
    第三种可能,MSN Client读取本地保存的密码,并恢复成明码时,被监听到。
    到底是哪一种呢?或者还有其他方式?
  • 2008-9-23 13:17:54   回复该留言
  • 51.Sean
  • 理论上,unix,vista这类有用户权限的系统,明文保存都没问题的。

    因为要访问保存密码的文件,本身就要通过安全认证.
  • 2008-9-23 14:21:36   回复该留言
  • 52.怡红阁
  • yihongge.com
  • 黑客的技术通常都比较高
    像那么大的公司,我们放了一百个心,没想到也会惨造被盗
  • 2008-9-23 17:41:31   回复该留言
  • 55.days72115
  • MSN已经慢成那个胎唇样了,在要给个hash的序列过去,MSN的掉线几率又会增加了。
    产生的hash还是需要有key才能生成,如果要记录的话,还是可以记录到的。
  • 2008-9-26 14:49:17   回复该留言
  • 56.LiKing
  • 这其中最主要的原因,我看是国外的整体网络发展较为健康,没有那种黑客生存的产业链,而在中国国内,黑客木马程序的开发和销售、盗取网络游戏帐号和QQ帐号、销售游戏帐号和QQ币等早已经发展成为一种分工明确的“地下产业”
    ——————————————————————
    这个有些道理,可是国外也不是完全没有这种盗号的,这样还是觉得M$和Google做得不好。
  • 2008-9-29 20:26:36   回复该留言
  • 57.仲和
  • 这好像是一片国外的文章.月光你忘了说明
  • 2008-9-29 20:41:17   回复该留言
  • 61.小海白
  • 有个智能广播的软件是用硬体密钥的方式的,只有在机箱后面插上那块东西才能正常启动系统
  • 2009-6-18 0:40:50   回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 通过Google订阅本站
  • 通过鲜果订阅本站
  • 通过电子邮件订阅本站

站内搜索

热文排行

最新评论及回复

最近发表

网站收藏

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.

This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.