RTL8821CU模块 使用 Wireshark 抓取80211帧

1. RTL8821CU模块 使用 Wireshark 抓取80211帧

本人研究了半天,发现windows平台上似乎并不支持抓取80211的数据帧,需要专门的网卡来实现。因此决定在虚拟机上安装ubuntu来抓取80211的数据帧。在实现过程中主要参考了一下两篇文章

https://zhuanlan.zhihu.com/p/40242258
https://blog.csdn.net/weixin_41856150/article/details/102327913

1.1 驱动安装

公司的平台主要采用rtl8821cu模块,因此首先需要为ubuntu安装rtl8821cu驱动。可以在gihub上搜索rtl8821cu驱动下载,也可以上gitee.com上搜索下载。下载完成以后解包并进入相应的文件夹。
修改Makefile
找到以下配置,并安装要求进行修改

CONFIG_RTL8821C = y #在WIFI IC中选择,如果你不是8821cu模块,应选择其他选项
CONFIG_PLATFORM_I386_PC = y # 选择对应的软件平台,我选择I386
CONFIG_WIFI_MONITOR = y # 在Features中打开监视器支持,否则无法抓取80211数据帧


编译
在改路径下以下cmd命令,在对应的文件目录下会生成8821cu.ko驱动

make modules

插入驱动
使用以下命令插入驱动

modprobe cfg80211
modprobe mac80211
insmod 8821cu.ko

插入无线网卡
插入无线网卡,将usb设备切换到ubuntu虚拟机(可以点击vm虚拟机右下方的usb设备进行切换),就可以在虚拟机上看到相应的无线网卡以及wifi输出。

1.2 wireshark


直接用以下命令安装即可。

sudo apt install wireshark 

使用以下命令便可以打开wireshark

wireshark

但此时因为没有设置无线网卡为监视器模式,无法监听80211数据帧

1.3 切换网卡为监视器模式

查看监视器模式是否支持
之前我们在配置文件中已经打开8821cu驱动对monitor的支持,现在我们需要确认相应的Makefile配置是否生效。(估计无法在windows系统使用80211抓包可能是自带驱动把相应的配置打开)
使用以下命令 iw phy
 

可以看到相应的网卡驱动 支持 monitor 模式,并且设备名为 phy0

ifconfig 命令查看无线网卡


我的无线网卡比较奇怪,名字为 wlx30eb1f1ca833 ,参照本教程的话需要把名字替换

使用 sudo ifconfig wlx30eb1f1ca833 down 关闭相应网卡

使用  sudo iw dev wlx30eb1f1ca833 set type monitor  将相应网卡设置为monitor模式

使用 sudo ifconfig wlx30eb1f1ca833 up 打开相应的网卡

如果必要,可以用 sudo iw dev wlx30eb1f1ca833 set channel 6 设置监听信道为6

再用  wireshark  打开wireshark,选择相应的无线网卡进行监听即可。

以下就是监听到的80211数据帧

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值