大家好,欢迎来到IT知识分享网。
作者简介
战龙,卫士通攻防实验室核心成员,安全研究员。
现从事通信保密和密码技术的研究,研究领域涉及密码激活成功教程,口令强度校验,系统安全加固。
曾就职多家安全企业,在密码激活成功教程方面积累了丰富的经验。
前言
2016年数据泄露事件层出不穷,五月份就爆出LinkedIn的1.17亿条登录凭据,4.27亿条MySpace用户凭据,被黑客分别以5比特币和6比特币的价格出售。
2016年7月,有人泄露了2016年3月18日之前的某海外网站的数据库,并将其公布在了互联网上。
网上公布的数据比较杂乱,我们本着对用户密码使用习惯进行分析的目的,对数据进行了整理,删除了敏感信息,仅保留了密码字段。
此海外网站的数据库来自于互联网,本文对其进行密码行为分析,只是本着安全研究的目的,以此来增强大家的安全意识和密码使用习惯。在此,我们郑重声明,反对任何非法的,未经授权的渗透测试活动,特别是拖库行为。
密码预处理
首先,我们使用AWK文本处理工具,对密码进行预处理,提取Hash值
awk -F “,” ‘{a[$2]++}END{for(i in a){print i,a[i] }}’ xxx.media\private\database.sql > passwords.log
然后,按重复率进行排序
sort -k 2 passwords.log > passwords.sort
密码加密方式分析
首先,我们需要分析一下密码的加密算法。
这里,我们对弱密码””计算md5值,经过比对发现,这一md5值与第19个Hash值相同,所以基本可以确定其密码使用的是单次md5加密,没有加salt,也没有进行二次md5,这也就导致其密码很容易被激活成功教程为明文。
密码统计分析
从上表我们可以看出,有85万用户的口令为空,口令为常见弱口令(,,)的有27万。
除此之外,剩下的更多的用户口令都是以fwe,qwe开头,以的变形作为结尾,不同口令在数量上也大致相同。
虽然都是弱密码,但是上述的弱口令与我们常见的弱口令却存在很大差异。
附:
国内常见弱口令
000000,,,,,,,,,,,abcdef,abcabc,abc123,a1b2c3,aaa111,123qwe,qwerty,qweasd,admin,password,p@ssword,passwd,iloveyou,
国外常见若口令
password,,,qwerty,abc123,monkey,,letmein,trustno1,dragon,baseball,,iloveyou,master,sunshine,ashley,bailey,passw0rd,shadow,,,superman,qazwsx,michael,football
通过以上分析,再想到此App短期内快速攀升到美国,香港,印尼,台湾,新加坡等地的App Store的免费App的排行榜前列。
由此,我们是否可以有理由怀疑,这些用户是不是真实用户呢?这些用户很大可能是为了刷排名榜而存在的僵尸用户。
密码长度分析
总密码量为(约2000万),其中大部分为8位密码,8位密码总计为(约1400万),占全部密码的67.77%。
此App的密码策略要求密码长度为8-20位,所以大部分人选择了8位,这样就不难理解了。因为过于长并且没有任何含义的口令,用户是比较难记忆的。
结论:
①.8,9,10,11位密码占总密码数的84%。
②.按密码长度占比由高自低: 8 > 10 > 9 > 6 > 7。
PS:虽然密码限制的长度需要至少八位,但是还是能发现有小于8位长度的密码存在。
③.8位密码比例为67.77%。
密码组成结构分析
由上图分析可以得出,8位长度的密码中,用纯数字组成密码的情况很少,更多的是由数字和字母进行混合的密码。
用l代表字符,d代表数字,我们对各种长度的混合密码进行一下结构分析。
经验与教训
本网站的用户口令仅计算了一次md5就储存在了数据库之中,这是非常不安全的。我们应当采用更加安全的Hash函数,并且对用户口令进行加salt处理等,以此来加强网站的数据保护能力。
免责声明:本文的目的是进行安全研究和提高用户安全意识,数据库来自于网络公开数据。
更多精彩优质内容请关注微信公众号:301在路上
合作请联系:微信号 (备注:单位+姓名)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/159170.html