Linux 下无线网卡进入监听模式抓包
Contents
无线网卡进入监听模式可以捕捉周围所有的无线数据包, 这样两个设备比如两个esp32之间的通信就可以在pc上抓包分析。
- 确认网卡是否支持监听模式(monitor mode)
| |
Supported interface mode 里有monitor就是支持
- 查看网卡名称
1 2 3ip link show 或者 ip a
一般wl开头(wlan0, wlp2s0, wlo1)就是无线网卡。以下的wlo1需要替换成实际的网卡名称。
关闭无线网卡
1sudo ifconfig wlo1 down创建监听接口
1sudo iw wlo1 interface add mon0 type monitor启动监听接口
1sudo ifconfig mon0 up如果报错 “SIOCSIFFLAGS: Operation not possible due to RF-kill”
1sudo rfkill unblock wifi设置监听频道
1sudo iw dev mon0 set channel 6具体使用的频道可以到路由器管理页面查看。
查看网卡监听状态
1iw dev抓包
1sudo tcpdump -i mon0 -nn -s0 -w capturefile.pcap解密需要设备连接wifi时的EAPOL握手数据包,所以抓包过程中须要把设备重连下wifi。
wireshark 设置
菜单栏 Edit -> Preferences
下拉Protocols里找到IEEE 802.11, 勾选 Enable Decryption
Enable Decryption
点击Decryption keys 后的Edit。
在弹出对话框里添加一条新key。
最简单的 wpa-pwd,知道wiifi ssid和密码就可以,格式:
1PASSWORD:SSID保存后,打开刚才抓的数据包应该可以正常解码了。

wireshark