wifi密码字典生成器
去年帮朋友处理一台老式TP-Link路由器,密码他忘了后台密码,字典复位后想连WiFi却发现默认密码被改过。生成折腾半小时,密码最后用手机热点才把事办完。字典那天晚上我就写了个脚本,生成专门生成常见WiFi密码组合——不是密码用来蹭网,纯粹是字典给自己留个后手。 密码字典这东西,生成原理简单得离谱。密码就是字典把可能的字符按规则拼起来,一行一个存成文本。生成跑包软件拿着这个文本挨个试,密码撞对了就停。字典真正麻烦的生成是怎么让字典“聪明”一点,别生成一堆“12345678”这种三秒就被排除的废柴。 家用WiFi密码逃不出几个套路。纯数字,八位起步,常见的是生日、手机号后八位、门牌号叠两遍。字母加数字,多半是名字拼音缩写加年份,比如 所以字典生成器的第一个模块应该是“基础词库”。把百家姓、常见英文名、路由器品牌、城市拼音全塞进去。第二个模块是“变形规则”:首字母大写、末尾加数字、中间插符号。第三个模块才是暴力枚举,但只针对纯数字段,因为八位纯数字总共一亿种组合,跑起来还能接受,字母数字混合八位就是万亿级别,家用显卡跑一年都跑不完。 核心就三个列表和一个循环。词根列表、后缀列表、连接符列表。用 跑完大概两千行。别嫌少,精准比数量重要。我试过拿网上下的十万行字典去跑自己的路由器,三小时没出结果;换成根据自家信息定制的两百行字典,四十秒就中了。当然,前提是你知道目标的一些背景信息。 别生成带空格的密码,路由器管理界面根本不让你输入空格。别用中文全角字符,编码问题能折腾死人。还有,字典文件别超过两百万行,hashcat加载都费劲。我一般控制在五十万行以内,按优先级分多个文件,先跑高概率的。 另外说句实在话,现在新路由器默认都开WPA3了,跑包效率断崖式下跌。这工具更多是给自己查漏补缺用——看看自家密码是不是在常见字典里。如果在,赶紧换。我自己的WiFi密码是随机生成的十六位,记在密码管理器里,连我自己都背不出来。 最后提醒一句,拿字典去跑别人的网络是违法行为。这东西就跟开锁工具一样,放家里没事,带出门用就变性质了。我写它纯粹是因为那次被路由器折腾烦了,现在它躺在我硬盘角落里,半年没打开过。先搞清楚你要对付的是什么
zhangsan1990。还有一种偷懒的,直接拿路由器品牌当密码,tplink123、xiaomi888这种,我见过不下十次。Python写起来不到五十行
itertools.product做笛卡尔积,结果写进文件。下面这段是我自己用的简化版:import itertools roots = ['zhang', 'wang', 'li', 'admin', 'tplink', 'xiaomi'] suffixes = ['123', '888', '000', '2023', '2024', ''] seps = ['', '_', '-'] with open('wifi_dict.txt', 'w') as f: for r, s, sep in itertools.product(roots, suffixes, seps): pwd = r + sep + s if 8 <= len(pwd) <= 12: f.write(pwd + '\n') 几个容易踩的坑
-
上一篇
-
下一篇