网络攻防大作业——用python实现wifi破解

实验内容:不借助其他工具,用python暴力破解wifi

实验工具:python3.6+pywifi模块+密码字典

实验环境:Windows7(64bit)

实验思路:

  • 首先搜索附近的wifi,将这些wifi信息(wifi个数、wifi名称、对应的Mac地址、以及信号强度)显示出来。
  • 其次通过显示出来的wifi列表,如果想对某个wifi进行破解,只需点击该行,就可以将该wifi的名称获取到。
  • 最后需要将使用密码字典文件导入进来实施破解即可。如果破解成功就弹出对话框显示破解成功,并且将破解获取到的wifi密码显示到wifi密码这一栏中,如果破解不成功,显示破解失败对话框。

实验步骤:分两步

step1:编写界面代码

这一步需要使用tkinter模块,这是python自带的图形界面库,通过import tkinter调用使用就可以了,代码中set_init_window函数就是实现界面排版功能。最后的界面实现结果如下图:

其中,各项表示的含义:

  • 搜索附近wifi:搜索wifi
  • 开始破解:破解之前需要获取wifi和密码文件路径
  • 目录路径:显示密码字典文件的路径
  • wifi账号:显示的是所要破解的wifi名称
  • wifi密码:显示的是所要破解WiFi的密码

wifi列表中包括四列,分别是:wifiID,SSID,BSSID,signal

  • wifiID:表示wifi的个数
  • SSID:表示wifi的名称
  • BSSID:表示wifi的MAC地址
  • signal:表示wifi的信号强度

step2:编写破解wifi代码

实现过程:
1、首先导入pywifi模块,因为要启用wifi那么必须要有启用wifi的模块。
2、有了启用wifi的模块以后,我们首先要抓取网卡接口, 因为连接无线wifi,必须要有网卡才行。一台电脑可能有很多网卡, 但是一般都只有一个wifi网卡,我们使用第一个网卡就行了。
3、抓取到以后就进行连接测试,首先是要断开所有的wifi网卡上 的已连接成功的,因为有可能wifi上有连接成功的在。
4、断开所有的wifi以后,我们就可以进行破解了, 从(.txt)文档中一行一行读取我们的密码字典, 一遍一遍的刷密码,直到返回isOK为True,表示破解成功。
5、因为连接也是要时间的,不可能一秒钟尝试好多次, 而且还依赖字典的强度。

对密码字典的思考:
如果想要破解某个wifi的话,还是应该结合社会工程学搜集该wifi的信息,然后根据这些信息通过密码生成器从而生成更具有针对性的密码,这样破解速度上有很大的提高。

实验总结和不足的地方:
1、学习了python的语法已经针对性的学习了GUI界面设计部分,但是界面部分设计的还是有些死板,可以通过pack()来管理界面,更好地办法可以通过h5+css+python来设计界面,自己造轮子,不用调用tkinter模块。
2、学习了如何使用python破解wifi

github下载

猜你喜欢

转载自www.cnblogs.com/lv6965/p/9219905.html
今日推荐