Python如何实现查看WiFi密码? 您所在的位置:网站首页 用python破解WIFI密码会成功吗 Python如何实现查看WiFi密码?

Python如何实现查看WiFi密码?

2024-07-16 12:35| 来源: 网络整理| 查看: 265

由于最近公司加强对无线安全的管理,wifi密码从以前的12345678,变成复杂难记的一串,导致我时常忘记WIFI密码,而遭受同事的“毒打”。由于我不是那种喜欢打扰同事认真工作的人,于是,我决定用python来试试,看看能不能读取到已连接过WIFI的密码,这样就不用老是叨扰别人了!

hahah

1. windows查看WIFI密码的方法

经过我的一番思考和查阅资料(搜索引擎),原理大致是这样。 通过windows的wifi属性查看密码。这种方式,操作起来相当麻烦,一般人根本找不到。即使第一次找到了,找第二次也要折磨死人。

windows查看wifi密码

另外,我们可以使用命令行来实现上述操作:

netsh wlan show profiles

列出已连接wifi的列表 然后再使用命令 ``netsh wlan show profiles WiFi名称 key=clear:

netsh wlan show profiles ZXQ key=clear

查看安全设置获得密码:

安全设置

上面的方式,仍然比较麻烦,对于我这种懒人来说,实在是有点聒噪!我就想快速的查看密码,不要输入!

想到python也可以执行cmd命令,那么第二种命令行的方式,不就可以用python来实现了吗?!

2. 使用subprocess模块

subprocess是Python标准库中的一个模块,用于在Python程序中执行外部命令或子进程。它可以通过创建子进程并与其进行通信,来调用系统命令或其他可执行文件。

subprocess模块提供了多个函数来调用子进程,如subprocess.run()、subprocess.Popen()等。这些函数可以执行命令并返回执行结果,也可以通过传递参数和读取标准输入输出进行进程间的通信。

import subprocess def get_wifi_password(): # 调用系统命令,获取WiFi密码 result = subprocess.check_output(['netsh', 'wlan', 'show', 'profile']) result = result.decode('gbk') # 将命令输出转换为字符串 # 提取WiFi名称 profiles = [i.split(':')[1][1:-1] for i in result.split('\n') if '所有用户配置文件' in i] # 获取各个WiFi网络的密码 passwords = [] for profile in profiles: password = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', 'name=' + profile, 'key=clear']) password = password.decode('gbk') # 转换为字符串 password = [i.split(':')[1][1:-1] for i in password.split('\n') if '关键内容' in i] passwords.append((profile, password[0])) return passwords # 调用函数获取WiFi密码 wifi_passwords = get_wifi_password() # 打印WiFi名称和密码 for wifi in wifi_passwords: print(f'WiFi名称:{wifi[0]},密码:{wifi[1]}')

python查看wifi密码

Got it!, 有了这个脚本,这不就是点一下的事么。在这个示例代码中,我们使用subprocess.check_output 函数调用了 netsh 命令来获取已连接WiFi网络的信息。获取到的信息中包含WiFi网络的名称和密码。

送给公司行政的小姐姐用,下次她见到我,不得叫一声大哥?

3. pywifi模块暴力破解

PyWifi 是一个用于操作WiFi的第三方库,提供了方便的API以获取WiFi信息。其本身并不支持获取已连接过的wifi的密码。该库主要用于连接、断开以及扫描wifi网络。

首先,我们需要使用pip命令来安装pywifi库:

pip install pywifi

由于此模块基于 comtypes 模块,因此同时需要下载此模块:

pip install comtypes

使用 PyWifi,首先我们需要创建一个PyWifi 对象:

#-*-coding:utf-8-*- import pywifi,time from pywifi import const def scan_wifi(): wifi = pywifi.PyWiFi() iface = wifi.interfaces()[0] #acquire the first Wlan card,maybe not iface.scan() # 扫描wifi time.sleep(1) # 休息一下 basewifi = iface.scan_results() for i in basewifi: print("wifi scan result:{}".format(i.ssid)) print("wifi device MAC address:{}".format(i.bssid)) # 尝试连接wifi profile = pywifi.Profile() #配置文件 profile.ssid = i.ssid #wifi名称 profile.auth = const.AUTH_ALG_OPEN #需要密码 profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密类型 profile.cipher = const.CIPHER_TYPE_CCMP #加密单元 profile.key = gen_key() #wifi密码 iface.remove_all_network_profiles() #删除其它配置文件 tmp_profile = iface.add_network_profile(profile) #加载配置文件 iface.connect(tmp_profile) time.sleep(5) if iface.status() == const.IFACE_CONNECTED: print("connect successfully!") else: print("connect failed!") time.sleep(1) return basewifi def gen_key(): # 生成wifi破解密码,通用做法是读取密码字典库 pass if __name__ == '__main__': scan_wifi()

因此,小伙伴们要当心哦,wifi密码设置要复杂!否则被人偷用网络都不知道哦! 当然咯,这个暴力破解的方法耗时也不稳定,而且也不一定正确,本文只是从技术角度来阐述如何使用Python来玩WIFI, 并不建议大家做任何破坏性的操作和任何不当的行为。

4.总结

为了能够快速查看 Wi-Fi 密码,我们介绍了两种方法:一种是通过 Windows 的 Wi-Fi 属性查看密码,另一种是使用Python 中的 subprocess 模块来执行命令行获取密码;

另外呢,有个名为 PyWifi 的第三方库,它可以用于操作 Wi-Fi,并提供了简单的 API 来获取 Wi-Fi 信息。比较适合我们获取到该网络的信息,以及使用 pywifi 模块实现一些更高级的功能,例如检测 Wi-Fi 网络的质量、分析数据流量等等。

---------------------------END--------------------------- 题外话

在这里插入图片描述

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

六、面试宝典

在这里插入图片描述

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

若有侵权,请联系删除



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有