当前位置:首页 > 焦点

字典生成工具在线

打开浏览器,字典搜索“字典生成工具”,生成前五页结果里至少三款是工具钓鱼站。这事我上个月刚踩过坑——想跑个哈希爆破测试,字典随手点进一个号称“在线生成百万字典”的生成页面,填完目标信息点了生成,工具跳出来的字典不是下载链接,是生成充值会员的二维码。

真正的工具在线字典生成工具,核心逻辑其实不复杂。字典你给它一组基础素材——姓名拼音、生成生日数字、工具常用弱密码前缀——它按规则做排列组合,字典输出一个纯文本文件。生成规则引擎决定了字典的工具质量。比如“张三”加“1990”加“!”这个组合,低质量工具只会机械拼接,生成zhangsan1990!这种一眼假的条目。好一点的工具会拆解姓名首字母、全拼、大小写变体,再和年份做笛卡尔积,同时加入键盘邻位替换(zhangsan→zhangsam)和常见leet变形(a→@)。

我实测过三个平台。某国内工具站,界面花哨,生成速度也快,但导出的字典里混了广告注释行,用hashcat跑的时候直接报错。另一个开源项目部署在GitHub Pages上,纯前端JS实现,断网也能用,缺点是规则固定,不能自定义字符集。第三个是某安全团队的内部工具流出,支持导入自定义规则文件,但需要填邀请码才能解锁完整功能——这种半吊子开放最让人难受。

在线工具绕不开两个硬伤。第一是隐私。你把目标人物的姓名、生日、手机号喂给一个来路不明的网站,等于把社工库的原材料拱手送人。我现在的习惯是:任何在线字典生成,输入框里只填假数据测试规则,确认逻辑没问题后,下载它的本地版或者直接抄规则自己写脚本。第二是性能。浏览器端生成大字典,内存扛不住。十万条以内还行,上百万条直接卡死标签页。真要跑大字典,还是得用crunch或者hashcat的规则引擎在本地跑。

有个细节值得说。很多在线工具标榜“智能生成”,实际就是拿几个常见密码表做随机抽样。你生成出来的字典,和rockyou.txt的前一万条重合度超过六成。这种字典跑出来命中率极低,纯粹浪费时间。判断方法很简单:生成一份包含password、123456、qwerty的测试字典,如果这三个词不在输出结果里,说明它的规则引擎连基础弱密码表都没覆盖。

自己搭一个在线字典生成器并不难。Python Flask起一个后端,itertools.product做组合,前端用Web Worker跑生成任务避免卡死。部署到内网或者本地localhost,既方便又安全。我上周花了一个下午写了个简易版,支持导入基础词表、设置最小最大长度、选择字符集,生成速度比那些广告站快得多,关键是数据不出本地。

如果你只是偶尔用一次,找个口碑好的开源项目在线demo就行。如果涉及真实目标测试,别偷懒,本地跑。那些让你注册登录才能下载字典的网站,大概率在后台默默记录你的输入内容。字典生成这件事,工具本身不复杂,复杂的是你怎么判断它值不值得信任。

分享到: