密码字典[键盘组合][拼音][字母数字混合] top100,500,1000

密码字典[键盘组合][拼音][字母数字混合] top100,500,1000

爆破,简单而粗暴,而成功的关键,我觉得在于字典。
随着安全意识的提升,常规的密码字典top100、top500啥的已经开始渐渐吃力起来,于是小弟决定做点工作更新一下密码爆破字典。
当然,收集信息然后按照一定的规则来生成字典,也是比较好的方式,但是不在本文讨论范围,这里只研究比较通用的密码爆破字典。
不想看过程的话直接跳到最后就能白嫖字典了。

密码字典目录

├─处理脚本
│      match.py
│      trie.py
│
├─字母与数字混合
│      digit_and_letter_top100.txt
│      digit_and_letter_top1000.txt
│      digit_and_letter_top500.txt
│
├─拼音
│      pinyin_all.txt
│      pinyin_top100.txt
│      pinyin_top500.txt
│
└─键盘组合
        keyboard_all.txt
        keyboard_top100.txt
        keyboard_top500.txt

密码字典来源

我下载了嘟嘟牛、7K7K、人人网、CSDN、178 游戏网等五个平台的泄露数据,只保留密码这一列,最后经过整理后的总行数为 42,208,168。详细情况如下表:

统计分析

提取这些泄露数据中的各种类型的密码,然后按出现频率排序,比如键盘组合top100等等,就能得到各种类型的密码字典。

键盘组合

密码字典[键盘组合][拼音][字母数字混合] top100,500,1000

键盘组合的密码,还是蛮常见的,我统计过这些网站泄露密码的top10:

密码字典[键盘组合][拼音][字母数字混合] top100,500,1000

可以看到我标红的那些,就是很明显的键盘组合的密码。
键盘组合的匹配方法:
(1) 根据键盘相邻的顺序,生成一组dict或者map,例如<a,z>,<a,s>
(2) 再遍历字符串中的每个字符,判断它与它后面的一个字符是否在这组dict或者map中;
(3) 所有字符均满足此条件则返回True,否则False。
这样我们就能将泄露数据中键盘组合的密码给提取出来。

拼音

国人使用拼音也挺多的,比如“woaini”这些,搞一搞还是很有必要的。
提取拼音,稍微复杂一点点,得用到字典树,这里不罗嗦了,代码会放在github里面。

[雨苁:国民素质有待提高]

数字与字母混合

单一字符组成,现在很多网站都不允许这样设置密码了,所以我准备提取下非单一字符组成的密码,数字与字母混合算是一种比较经典的。最后提取出来发现占了全部密码数据的40%左右。

排序

提取出来之后得按频率排序,这里我用的是Linux中的sort指令,例如把test.txt中的内容按重复次数降序输出

>sort test.txt | uniq -c | sort –rn

处理结果是这样,前面是次数,后面是密码:

密码字典[键盘组合][拼音][字母数字混合] top100,500,1000

密码字典下载地址:

雨苁网盘 https://w.ddosi.workers.dev/
② GitHub password_brute_dictionary

from https://xz.aliyun.com/t/7823

随机密码生成器

https://www.ddosi.com/mm.html

最后附上随机密码生成器.生成的密码示例:

随机密码生成器
随机密码生成器
uE7D~A@n9lVvmg3M#x)T0bF64
M!@(#xARc8gElqtSnT1ID6WJ_
tJGmT)Azw9e#%_vj~Y1uEMqxN
2*O&p6Fw8rM%xL1Pl@bB#9TVg
7!uRp2#n6~01JcCVIk*OX58BQ
%Pq)0(IUJehybgF~Q1^D7G#pB
I1D^&j2Ac6hvtz)#qZb9geCHx
&f%Rj^x09*IPb+c2)XY1kBwl8
#3EVDAaPf^n(B!l)j@rQeh~my
37%BvIAgQWjpkwyb!u~2&VFZR
*ZJj47@%$mQHxWA2REBI#5rvy
@mJYKltPAv0qR7LwM3CHcr4W+
%ERfCAzQUNx^qhtO_9aXWgj3G
G%Uz~hQeOB6YpkVy8nHCrPq3+
rOGzJ7$Mc4f%WKQ&XELAkZRID
)V9z1h2EX#5UHWqMan(RT3NLA
*nt)Bjvgx0A^6eZVFJS%3k$b1
B!~xAcl0$&)4kyTI3^2DS%nZw
BC1j7JPN9WkXQY)fI%tAhKl*O
z6gfOv032U#KZ&MhPcIL^_NXe