猫宁!!!
偶然看到一篇短文,是对2011年csdn泄露的约643万数据的数据汇总分析,这里做个简要总结 。
一、单一密码使用5000人以上的,14个,当时密码中有两个命名方式很有趣,dearbook是早年的一家计算机专营书店,xiazhili是csdn下载频道的上传达人,默认性别女。相较不知来源的密码字典,国内泄露数据的字典更贴合中国人的习惯。
123456789 235037
12345678 212761
11111111 76349
dearbook 46054
00000000 34953
123123123 20010
1234567890 17794
88888888 15033
111111111 6995
147258369 5966
aaaaaaaa 5890
987654321 5555
1111111111 5145
66666666 5026
二、密码去重之后。说明密码中设置有特殊字符对于大多人来说感觉很麻烦。
纯数字密码:289 4567个
纯字母密码:79 5778个
字母和数字:250 6714个
含特殊符号:23 1572个
三、密码长度,这是密码长度设置8-14位的对应账户数,其余的合计不足50万。
8位 2337895
9位 1550730
10位 929948
11位 627736
12位 368567
13位 167302
14位 154473
四、手机号做密码的有18.9万个,生日做密码的有43.7万个,其中手机号当然是移动用户最多啦,生日年份1970-1990都有,还有例如2006,2008,可能是小孩的生日年份。
五、邮箱使用单一类型超过10万个账户的,网易,QQ邮箱用户量最多,远高于其它。
qq.com 1976001
163.com 1766935
126.com 807818
sina.com 351750
yahoo.com.cn 205486
hotmail.com 202965
gmail.com 186809
sohu.com 104756
顺便把csdn的道歉信贴出来,已经是2011.12.21的事儿了。
由此想到另外一个字典分析工具pipal,ruby语言写就,简单易用,报告结构清晰完整,但是中文互联网相关的详细介绍并没有很多。
passdic.txt为字典,report.txt为生成的报告
passdic.txt中包含213个密码,去重后还是213个。
数量排名前10的密码,-t 10的参数是可以调整的,100也可以
包含如下字母单词的密码前10名
左侧数字是密码长度,右侧数字是改长度密码数量,以密码长度排序。
以密码长度的数量排序
图对应密码长度的数量排序,这个也是作者津津乐道的,初看可能有点蒙,其实是这样的,下面数字中00对应0,12对应12,竖着看,都是密码对应的长度。有16个竖杠,最大的数量53对应16杠,较小数量1和2对应1杠,分为不同的档位进行排序。
1-6位密码占比,1-8位密码占比,8位以上的密码占比
只包含小写字母的密码占比,只包含大写字母的密码占比,只包含字母的密码占比,只包含数字的密码占比
开头大写结尾特殊字符,开头大写结尾数字
结尾只包含1个数字,结尾只包含2个数字,结尾只包含3个数字
例如最后字符为1的密码数量与占比,最后两个字符为23的密码数量与占比
小写字母数字密码,数字密码,小写字母密码,大写字母数字密码
纯数字,先字母后数字,纯字母,先数字后字母,其它种类,数字字母数字
因为密码样本数量小,所以上面的密码分析结论没有全覆盖,例如对月份、星期、年份等的出现频次分析。
此外根据帮助文件,还有别的几个功能。
pipal --list-checkers 表示检测可以覆盖的范围,包括地名,不同语种等。(报错可以执行gem installlevenshtein-ffi )
进入/usr/share/pipal/中可以看到checkers_available和checkers_enabled两个文件夹,默认情况下checkers_enabled采用Basic_Checker检测模式
checkers_available文件夹内容如下:
checkers_enabled文件夹内容如下:01basic.rb对应basic.rb
readme:This directory contains the checkers youwant to enable.
The way I see this working is the same asApache does with modules and sites,keep the checkers in the checkers_availabledirectory but then symlink the ones you want to use into here.
现在只需要在checkers_enabled文件夹做一个软链(图标)02email_names.rb链接到checkers_available文件夹中email_names.rb即可
pipal -v passdic.txt -o report02.txt
除了basic results还有如下:
pipal -v passdic.txt 同样可以分析密码文件,但是不能像-t一样自定义添加对应的参数,-v默认的是10,根据帮助文件说明,verbose显然是可以获取更多详情的意思,可能是因为样本小的缘故,没有表现出来。
pipal --gkey 是一个可选项,后面可以添加google地图的api key,实现基于邮政编码的密码分析,google map包含了来自蓝星的所有邮政编码。
详情可参考:http://www.runoob.com/googleapi/googleapi-tutorial.html
google地图中国
http://www.google.cn/maps