Wi-Fi 网络的安全性往往是容易被人忽视的重要问题,如果你使用了常见的弱口令密码,那么就非常容易被弱口令爆破,从而被“蹭网”
基本原理
弱口令爆破的基本原理很简单,主要是根据 Wi-Fi 的WPA/WPA2 加密协议所使用的 4 次握手协议来的:
4 次握手过程:
- 路由器发送随机数(Nonce)给客户端:作为加密密钥的一部分。
- 客户端使用随机数生成加密响应:发送回路由器。
- 路由器验证加密响应是否正确:如果正确,发送自己的确认信息。
- 客户端确认连接建立:会话密钥生成,开始加密通信。
在这个过程中,会产生握手包,包含了加密的密码校验值(由 Wi-Fi 密码和随机数生成)
Wi-Fi 网络中,握手包是在客户端设备和无线接入点(AP)建立安全连接时自动生成的。在以下情况下会触发握手:
- 初次连接网络:当设备输入正确密码并连接到无线网络时。
- 重新连接网络:当设备因任何原因断开后需要重新连接时。
握手包就是这次认证和加密密钥交换过程中交换的 4 次握手(Four-Way Handshake)数据。
通过强制断开连接,向目标客户端发送伪造的 Deauthentication 数据包,模拟无线接入点(AP)命令客户端断开连接。客户端在接收到这个假断开请求后,会认为连接已失效,并主动与路由器重新建立连接。
当目标设备尝试重新连接到无线网络时,Wi-Fi 协议会再次执行 4 次握手过程,用于:
- 验证客户端的身份(基于 Wi-Fi 密码)。
- 生成新的加密密钥以保护后续通信。
这时,监控模式下的无线网卡可以捕获到握手包。
检查方法
检查的方式也很简单,首先需要安装网络安全工具 aircrack-ng
,基本使用步骤如下:
- 启用无线网卡监控模式
- 在终端输入命令:
sudo airmon-ng start wlan0
- 这会这会将无线网卡
wlan0
切换为监控模式,原来的wlan0
接口就会被替换为wlan0mon
- 无线网卡通常有两种工作模式:托管模式(Managed Mode)和监控模式(Monitor Mode),托管模式下无线网卡连接到指定的 Wi-Fi 网络并只接收目标网络的数据包,监控模式能接收不同信道上的所有无线流量,无论数据包是否针对它
- 在终端输入命令:
- 扫描附近的 Wi-Fi 网络
- 在终端输入命令扫描 Wi-Fi 网络:
sudo airodump-ng wlan0mon
- 这将显示网络名称(ESSID)、MAC 地址(BSSID)、信号强度(PWR)等信息
- 在搜索到想要的 Wi-Fi 后,
ctrl+c
关闭搜索
- 在终端输入命令扫描 Wi-Fi 网络:
- 捕获网络数据包
- 选择目标 Wi-Fi 的 BSSID 和信道(CH),然后运行:
sudo airodump-ng --bssid <BSSID> --channel <CH> --write capture wlan0mon
- 这会将捕获的数据包保存到一个名为
capture-01.cap
的文件中 - 这里需要注意,通常握手包不会自动发送,因此我们需要通过“断开设备连接”来强制握手:
sudo aireplay-ng --deauth 10 -a <BSSID> wlan0mon
,其中10
表示断开 10 个数据包,提示handshake
则表明成功捕获
- 选择目标 Wi-Fi 的 BSSID 和信道(CH),然后运行:
- 字典破解密码
- 下载字典并进行破解:
sudo aircrack-ng -w /path/to/wordlist.txt -b <BSSID> capture-01.cap
,其中-w
是字典文件位置 - 使用
hashcat
可以借用 GPU 的算力加速破解进程
- 下载字典并进行破解:
如果上述方法没有成功破解你的密码,那么恭喜你,说明你的 Wi-Fi 不存在弱口令安全问题。同时为了进一步降低 Wi-Fi 的安全风险,可以设置 mac 地址的访问控制,只允许指定 mac 地址的电子设备访问,这样也多一道防护~