WIFI WPA/WPA2协议:深入解析与实践

WIFI WPA/WPA2协议:深入解析与实践

1. WPA/WPA2 协议

1.1 监听 Wi-Fi 流量

解析 WPA/WPA2 的第一步是监听 Wi-Fi 流量,捕获设备与接入点之间的 4 次握手数据。然而,设备通常不会频繁连接或重新连接,为了加速过程,攻击者会发送断开认证包 (Deauthentication Packet),强制客户端重新连接,从而捕获新的握手数据。

1.2 四次握手详解

四次握手是设备与路由器确认密码正确性的重要过程。其基本步骤如下:

  1. 路由器发送挑战信息: 路由器向客户端发送一个挑战信息,要求其证明拥有正确的网络密码 (PSK)。

  2. 客户端加密响应: 客户端使用 PSK 加密挑战信息,并将加密结果发送回路由器。

  3. 路由器验证并确认: 路由器验证客户端的加密响应,确认其拥有正确的 PSK,然后发送自己的确认信息。

  4. 最终验证并建立连接: 客户端验证路由器的确认信息,双方完成握手,建立加密连接。

尽管四次握手过程中并不会直接暴露 PSK,但握手数据中包含的信息足以用于离线暴力破解或字典攻击。

1.3 准备工作

在攻击设备上执行以下命令,确定可用的无线网络设备:

bash 复制代码
sudo iw dev

输出示例:

bash 复制代码
glitch@wifi:~$ iw dev
phy#2
	Interface wlan2
		ifindex 5
		wdev 0x200000001
		addr 02:00:00:00:02:00
		type managed
		txpower 20.00 dBm    

我们可以使用设备/接口wlan2,并且从此输出中可以获取两个对我们有用的重要细节:

  1. addr是我们设备的MAC/BSSID。BSSID代表基本服务集标识符,它是无线设备或接入点物理地址的唯一标识符。
  2. type显示为managed 。这是大多数 Wi-Fi 设备(如笔记本电脑、手机等)连接 Wi-Fi 网络时使用的标准模式。在 managed 模式下,设备充当客户端,连接到接入点以加入网络。还有另一种模式称为监控模式monitor mode,我们将很快讨论。

1.4 扫描 Wi-Fi 网络

现在,我们想使用我们的设备扫描附近的 Wi-Fi 网络wlan2。我们可以使用

bash 复制代码
sudo iw dev wlan2 scan

dev wlan2指定您要使用的无线设备,并scan告诉iw扫描该区域以查找可用的 Wi-Fi 网络。

输出示例:

bash 复制代码
glitch@wifi:~$ sudo iw dev wlan2 scan
BSS 02:00:00:00:00:00(on wlan2)
	last seen: 520.388s [boottime]
	TSF: 1730575383370084 usec (20029d, 19:23:03)
	freq: 2437
	beacon interval: 100 TUs
	capability: ESS Privacy ShortSlotTime (0x0411)
	signal: -30.00 dBm
	last seen: 0 ms ago
	Information elements from Probe Response frame:
	SSID: MalwareM_AP
	Supported rates: 1.0* 2.0* 5.5* 11.0* 6.0 9.0 12.0 18.0 
	DS Parameter set: channel 6
	ERP: Barker_Preamble_Mode
	Extended supported rates: 24.0 36.0 48.0 54.0 
	RSN:	 * Version: 1
		 * Group cipher: CCMP
		 * Pairwise ciphers: CCMP
		 * Authentication suites: PSK
		 * Capabilities: 1-PTKSA-RC 1-GTKSA-RC (0x0000)
	Supported operating classes:
		 * current operating class: 81
	Extended capabilities:
		 * Extended Channel Switching
		 * Operating Mode Notification         

这里有很多信息需要剖析,但以下是表明该设备是接入点的最重要的细节:

  • 设备的BSSID和SSID分别为和。由于显示了SSID,这意味着设备正在通告网络名称,接入点会这样做以允许客户端发现并连接到网络。02:00:00:00:00:00 MalwareM_AP
  • RSN(Robust Security Network)的存在表明网络正在使用 WPA2,因为 RSN 是 WPA2 标准的一部分。WPA2 网络通常使用 RSN 来定义加密和身份验证设置。
  • Group and Pairwise ciphers 是 CCMP 。带有密码块链接消息认证码协议 (CCMP) 的计数器模式是 WPA2 使用的加密方法。
  • RSN 里面的值Authentication suites是PSK,表示这是一个 WPA2-Personal 网络,使用共享密码进行身份验证。
  • 另一个重要细节是DS Parameter set显示通道 6 的值。就 Wi-Fi 而言,通道是指更宽泛的 Wi-Fi 频谱内允许无线设备相互通信的特定频率范围。Wi-Fi 有多种通道,它们都有助于在不同的频段分配网络流量,从而减少干扰。最常见的两种 Wi-Fi 通道是 2.4 GHz 和 5GHz。在 2.4GHz 频段,通常使用通道 1、6 和 11,因为它们不重叠,可最大限度地减少干扰。在 5 GHz频段,有更多可用通道,允许更多网络共存而不会受到干扰。

现在是时候讨论我们可以在某些无线设备上使用的另一种模式:监控模式 。这是一种主要用于网络分析和安全审计的特殊模式。在此模式下,Wi-Fi 接口会监听特定信道上的所有无线流量,无论它是否定向到设备。它会被动捕获范围内的所有网络流量以进行分析,而无需加入网络。我们想检查我们的wlan2接口是否可以使用监控模式。为此,我们将运行命令sudo ip link set dev wlan2 down关闭我们的设备。然后我们将使用 切换模式以sudo iw dev wlan2 set type monitor将 wlan2 更改为监控模式。然后使用 重新打开我们的设备sudo ip link set dev wlan2 up

bash 复制代码
glitch@wifi:~$ sudo ip link set dev wlan2 down
glitch@wifi:~$ sudo iw dev wlan2 set type monitor
glitch@wifi:~$ sudo ip link set dev wlan2 up

我们可以使用命令确认我们的接口处于监控模式sudo iw dev wlan2 info

输出示例:

bash 复制代码
glitch@wifi:~$ sudo iw dev wlan2 info
Interface wlan2
	ifindex 5
	wdev 0x200000001
	addr 02:00:00:00:02:00
	type monitor
	wiphy 2
	channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz
	txpower 20.00 dBm

2. 结论

WPA/WPA2 虽然安全性较高,但仍存在被破解的可能性。

增强防护: 使用强密码、启用 WPA3、禁用 WPS 以及定期更新固件均可显著提高 Wi-Fi 网络安全性。

通过理解其工作原理和漏洞,我们可以更好地保护自己的网络安全。

相关推荐
andxe1 小时前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
shiyi.十一2 小时前
第2章:应用层 — 知识要点与架构
网络·计算机网络·架构
DFT计算杂谈3 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
九硕智慧建筑一体化厂家3 小时前
直流智能照明|一站式低碳照明解决方案,安全、节能、降本、全场景适配
安全
中微极客4 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能
admin and root7 小时前
「移动安全」安卓APP 反编译&frida脱壳技巧分享
android·开发语言·python·web安全·微信小程序·移动安全·攻防演练
小程故事多_808 小时前
算力工厂与安全沙箱,企业AI规模化落地的两条核心生命线
人工智能·安全
云水一下8 小时前
零基础玩转bWAPP靶场(十四):SQL 注入(GET/选择型)
web安全·sql注入·bwapp
猿的天空8 小时前
机器人双手迎来全栈训练系统:灵初智能EgoSteer让灵巧手无所不能
网络·人工智能·计算机·ai·程序员·机器人·编程
Xzaveir_7778 小时前
OPPO、vivo、荣耀号码认证:多终端拨测矩阵与异常复现
大数据·网络·科技·矩阵·产品经理·ai-native