最近过年回爷爷家,发现爷爷家有一个特殊的USB无线网卡Tenda U6和COMFAST CF-952AX v2,淘宝上都很便宜,还有一个奋威 Fenvi FU-AX1800 是MT7921
想起了以前上学时候使用这种USB无线网卡破wifi的经历,就尝试了一下:
破解wifi的网卡最重要的是驱动是否支持,可以去这里查询
如果支持了,可以使用Bettercap进行破解,需要注意这几个问题:
1.操作系统内核版本,如果是COMFAST CF-952AX v2用的是RTL8852BU需要满足linux内核在6.17以上.奋威AX1800则需要满足内核6.12(含6.12)以下,6.13开始会有bug抓不到管理帧Beacon
2.操作系统是否开启了WEXT支持,可以用grep -i wext /boot/config-$(uname -r) 查看,如果提示 CONFIG_CFG80211_WEXT is not set则iwlist用不了,需要使用patch过的版本来使用NL80211协议的iw(我和作者battle不过QAQ)
解决以上问题之后,在虚拟机里面透传usb无线网卡,我是mac用的vmware Fusion。并使用源码编译的方式安装Bettercap:
1 | git clone https://github.com/bettercap/bettercap.git |
之后使用命令开启webui:
1 | bettercap -eval "set ui.address 0.0.0.0;set api.rest.address 0.0.0.0 ;ui on" |
在webui里面可以开启wifi模块,当你看到wifi模块里面某个wifi有几个红色的client的时候:
记住他的信道,在这里输入:
1 | wifi.recon.channel 11 |

之后可以使用deauth攻击等着嗅探出握手包.
需要注意的是,wifi网卡一次只能监听一个信道,所以一开始的界面是轮流监听信道,可能抓到的握手包不完整,只能当扫描器使用,真正的嗅探握手包还是需要指定信道的。
如果抓到握手包了就可以看到一把钥匙,这个就是抓包文件:
之后使用hcxpcapngtool即可导出让hashcat破解,这个工具也需要编译安装:
1 | hcxpcapngtool bettercap-wifi-handshakes.pcap -o keyfile |
里面的EAPOL pairs(best)就是成功的导出数量:
1 | EAPOL pairs (total)......................: 32 |
之后使用hashcat即可破解,需要用好一点的显卡:
1 | .\hashcat.exe -m 22000 -a 3 .\keyfile ?d?d?d?d?d?d?d?d |
或者字典攻击,可以使用seclist:
1 | .\hashcat.exe -m 22000 -a 0 .\keyfile .\probable-v2-wpa-top4800.txt |
总的来说这个工具比aircrack-ng好用。赞一个。除此之外,你也可以尝试使用命令wifi.deauth all或者wifi.assoc all来批量发送deauth攻击和pmkid攻击,锁定信道效果更佳,需要注意的是可能有假阳性存在,可以看我这个pr
顺带一提我在mac上跑Fedora 43,运行aireplay-ng的时候提示Couldn’t determine current channel for wlan0mon, you should either force the operation with –ignore-negative-one or apply a kernel patch.,这就是WEXT兼容性的问题,需要我这个补丁来解决。
说些什么吧!