当前位置: 首页 > >

CSDN明文口令泄露的启示

发布时间:

2011年 12 月 21 日晚,某计算机专业的大学生寝室,某同学大叫到:“兄弟们,最新的日本 XX 女星的 AV 片已经下好,大家快过来看啊,相当精彩啊~~~”,然而,这个寝室里的其它同学似乎没有听到这哥们的呼喊,于是,这哥们又叫了三次,没有人理他,因为大家都在眉飞色舞地谈论着 CSDN 的明文密码和用户帐号泄露的事情,并在网上查找着下载 CSDN 那 600 万的用户数据……上面这个故事是我编的,只是想描述一下昨晚的情形。


  其实,CSDN 明文密码并不是什么稀奇的事情,我是 2000 年注册 CSDN 的吧,当时找回口令的机制就是把口令直接传回来了,这一定是明文了。去年去 CSDN 参加移动互联网沙龙的时候,范凯和蒋涛说过明文密码的事,不过他们说的是很早以前的事了,而且一笔带过了。1年后的今天,事情又暴了,可见,“出来混的,迟早是要还的”这句话是几*真理的。


  我在以前的 BLOG 里就提到过 CSDN 的明文密码(在“如何设计用户登录功能”一文)和帐号泄露(“如何设计自己的口令”) 的事(由此可见,酷壳里的很多文章里的事都应验了,因为我知道“出来混的,迟早是要还的”)


  (可悲吧?还是程序员的网站呢,明文口令和用户信息泄露有悖于一个程序员网站的称号


  泄露的密码分析


  我昨晚下载了 www.csdn.net.sql 文件,并分析了一下这个文件,经过各种 awk, grep, sort, uniq, sed 后,下面是我看到的东西:


有* 45 万的用户使用 123456789 和 12345678 做口令。有* 40 万的用户使用自己的生日做口令。有* 15 万的用户使用自己的手机号做口令。有* 25 万的用户使用自己的 QQ 号做口令。设置成弱口令的用户占了 590 万,也就是那种就算你用 MD5 或是 SHA 散列的也能很快就被暴力*獬隼吹目诹睢V挥 8000 多个用户的口令里在 8 个长度以上,并有大写字母,小写字母,数字,并不在字典表里。

  (很好,这回泄露的还不单单只是明文用户密码和用户邮件,还有用户的手机号,生日和 QQ 号。挺好的)


  下面,我们来看一下 top 100 的口令是什么?(第一列是采用这个密码个数,第二列是密码,我擦 dearbook 是什么啊)简单地看了一下,top 一万的口令都很 SB。比如什么 woshishui, 123abc, aaa123456,01010101,haohaoxuexi,msconfig 相当的 2B,还有P@ssw0rd,q1w2e3r4t5,看似文艺,实际很 2 的口令…. (可悲吧?还是程序员的网站呢,自己设的口令有悖于一个程序员的称号


  235033 123456789


  212751 12345678


  76346 11111111


  45902 dearbook


  34953 00000000


  19986 123123123


  17791 1234567890


  15033 88888888


  6995 111111111


  5966 147258369


  5553 987654321


  5459 aaaaaaaa


  5145 1111111111


  5025 66666666


  4435 a123456789


  4096 11223344


  3667 1qaz2wsx


  3649 xiazhili


  3610 789456123


  3497 password


  3281 87654321


  3277 qqqqqqqq


  3175 000000000


  3143 qwertyuiop


  3094 qq123456


  3077 iloveyou


  3061 31415926


  2985 12344321


  2886 0000000000


  2826 asdfghjkl


  2797 1q2w3e4r


  2580 123456abc


  2578 0123456789


  2573 123654789


  2540 12121212


  2515 qazwsxedc


  2396 abcd1234


  2380 12341234


  2348 110110110


  2298 asdasdasd


  2243 22222222


  2166 123321123


  2160 abc123456


  2145 123456


  2138 a12345678


  2113 123456123


  2106 a1234567


  2100 1234qwer


  1989 qwertyui


  1986 123456789a


  1971 aa123456


  1918 asdfasdf


  1891 99999999


  1859 999999999


  1859 123456aa


  1854 123456123456


  1699 520520520


  1656 963852741


  1652 741852963


  1652 55555555


  1589 33333333


  1480 qwer1234


  1384 asd123456


  1339 77777777


  1316 qweasdzxc


  1285 code8925


  1273 11112222


  1268 ms0083jxj


  1245 zzzzzzzz


  1214 111222333


  1206 qweqweqwe


  1200 3.1415926


  1183 123456qq


  1148 147852369


  1136 521521521


  1121 asdf1234


  1111 123698745


  1109 1123581321


  1058 asdfghjk


  1054 q1w2e3r4


  1038 12345678a


  1003 woaini1314


  991 1234abcd


  988 123qweasd


  975 1qazxsw2


  967 woaiwojia


  920 321321321


  910 05962514787


  894 123456987


  892 kingcom5


  882 zxcvbnm123


  882 5845201314


  853 0987654321


  847 wwwwwwww


  835 11111111111111111111


  805 12345600


  783 11235813


  777 1q2w3e4r5t


  772 10101010


  770 123456asd


  老生长谈安全问题


  从酷壳出现开始我就在老生长谈用户安全的东西了,今天借着这个事,大家再去重温一下酷壳的文章吧:


Twitter 禁用的口令。看看去吧,一个好的网站应该如何引导用户设置强口令。Apple ID 也是这样,需要你输入的口令有大小写,数字,非数字和字母,等等。今天 CSDN 的这个列表应该成为各大网站“口令禁用列表”。  ?
有朋友说,明文口令是巨 2 的一件事,是的。我可以告诉你,这个明文口令可以存在于所有国内的网站上,比如:QQ,新浪,人人,开心……。对于安全问题,你要做最坏的假设,鲁迅先生说过:“不惮以最坏的恶意来推测中国人”,所以,对于中国的网站你要做如下最坏假设:1)其以明文存我的口令,2)其内部不良员工会把我的信息泄露出去。不信你可以看看下面的某 QQ 群里的截图:(看看多玩网明文口令的消息吧,再看看这个消息吧?QQ 邮箱和 QQ 号的)
你可能会说用 MD5 和 SHA 散列口令就好了,这个只比明文好一点,但还不是最安全的,因为如上所述。就算我只能拿得到你的被散列的密码,我一样可以使用暴力*猓踔辆褪浅⑹砸幌伦值淅锏拿苈刖涂梢粤恕U饣岱浅?斓模憧梢钥纯幢菊镜恼馄恼隆捌*饽愕目诹睢保现在暴力* MD5 和 SHA 的口令很快的,因为 MD5 和 SHA 性能太好了。所以,你需要看看“如何防范密码被*狻保浠岣嫠吣慵用芸诹钜靡桓鲂阅懿榈乃惴ā
所以,你有必要地读一读我的这篇“如何管理和设计自己的口令”,不要在同一网站上使用相同的口令,把口令的级别分好的组。自己管理好自己的口令。
?对于 Web 用户的安全问题,程序员们一定要看一下这两篇文章,你要是不看的话,你没有资格开发 Web 项目。
如何设计用户登录功能Web 开发中需要了解的东西
当你看过 如何设计用户登录功能?一文后,你一定会头晕的,所以,我想告诉你,这种事情最好不要自己干,使用 OpenID 和 OAuth 吧,人家把这事干到了极致了。而且这样会带来两个好处:
用户不需要自己维护和管理一套新的帐号用户的资料放在国外,从政治上来说是安全的。(八卦一下:Google 总部要求中国谷歌所有开发团队不得在本地保存用户的信息)
最后一点,我再说说如何让自己内部的用户数据不会被不良员工外泄。所有的开发团队都不允许直接操作用户的数据库,只允许通过安全的接口来验证用户,用户信息的数据库中需要对操作者有审计功能,永远不允不受信的人进行全库扫描。当然,我相信,国内的开发团队绝对达不到这一步(包括银行)。
再说一下,真正的安全系统是协同整个社会的安全系统做出来的一道安全长城,而不是什么都要自己搞。比如:通过很多方法“耦合”和银行和电信其是别的第三方的安全策略,比如,让用户绑定邮箱,绑定手机,绑定信用卡等。

  最后说一下,CSDN 在这次事件的表现还是很不错的,道歉也很诚恳,说明其还要是想要改进的。其它的网站就很恶劣了。包括新浪,人人,开心等,最恶心的就是腾讯,你说他的安全有问题,他还找一堆人来骂你。



转载于:https://www.cnblogs.com/wala-wo/archive/2013/05/22/5119343.html






相关资源:密码显示明文



友情链接: 高中资料网 职业教育网 成人教育网 理学 大学工学资料