MAC的无线网卡自带支持monitor模式的驱动,我们可以使用它直接抓取wifi air log,不需要借助其他网卡。
1. 准备工作
在抓包前,我们需要先找到目标AP所在的信道以及其他信息。并且需要将我们的网卡切到对应的信道上,否则不同的信道上是不能抓包的。
1.1 扫描
sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -s
本次我们的目标AP是TP-LINK_Home,当前信道为36,MAC地址为48:5f:08:32:22:ff
1.2 切换信道
接下来我们需要将MAC的无线网卡切到对应的信道上。
先断开所有连接
sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -z
然后再切换信道
sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -c36
最后的-c36
就代表我们将网卡的信道设置为36,与目标AP一致。
2. 开始抓包
2.1 airport命令抓包
使用airport命令抓包,首先需要拿到WiFi的网卡名称,我的机器是 en0
sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport en0 sniff
如果之前没有指定信道,那么这里抓包时也可以指定
sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport en0 sniff 36
执行完airport sniff
命令后,输出如下,代表成功开始抓包
想要结束时,只需要按下control
+C
,结束前终端会输出保存的文件路径
那么后面我们就可以使用相应的软件打开这个文件进行分析了。
2.2 WireShark抓包
WireShark抓包之前,必须要先按照1.2
正确设置网卡的信道,然后打开WireShark,勾选无线网卡en0的monitor模式
点击Start之后开始抓包。
抓包结果如下,这里我对mac地址进行了过滤,分别是AP的MAC(48:5F:08:32:22:FF)和我测试手机的MAC(0e:8d:e0:b1:80:42)
WireShark常用的WiFi相关的过滤条件如下: