如何通过抓包监听找回遗忘的隐藏网络SSID
结论
完全可以通过抓包方式找回你遗忘的隐藏SSID,这个方案对IoT设备的成功率非常高。
绝大多数Wi-Fi客户端(尤其是IoT类设备)不会做针对已知隐藏网络的探测隐私保护:当设备处于断连状态、尝试自动连接之前保存过的网络时,会主动发送Probe Request(探测请求) 帧,帧内会明文携带它存储的目标SSID,哪怕对应网络本身配置为隐藏不广播,这个字段也不会被加密。
操作步骤
- 准备一张支持监听模式的无线网卡,在电脑上打开Wireshark,将网卡切换为监听模式,优先监听2.4G频段(绝大多数IoT设备仅支持2.4G Wi-Fi),如果确定之前的网络是5G频段再切换到对应5G信道。
- 将目标IoT设备断电后重新上电,断连状态下设备会自动扫描所有已保存的已知网络,此时在Wireshark中添加显示过滤器:
wlan.fc.type_subtype == 0x04,该规则会过滤出所有无线探测请求帧。 - 核对抓到的请求帧的源MAC地址,找到和你IoT设备机身标签印刷MAC一致的帧,展开帧详情里的
SSID parameter set字段,字段显示的字符串值就是设备正在尝试连接的隐藏SSID。
注意事项
- 现在部分手机、电脑系统会用随机MAC地址发送探测请求,但几乎所有量产IoT设备都不会启用随机MAC功能,直接对照设备标签的物理MAC就能匹配到对应设备的请求。
- 如果上电后抓了3-5分钟没看到对应SSID,可以按一下设备上的配网/复位键(不要长按触发恢复出厂),触发设备主动发起全网络扫描。
- 注意不要把Probe Response帧(子类型号0x05,是无线AP发出的响应帧)和客户端发的Probe Request搞混,后者才会携带客户端侧保存的SSID信息。
- 如果固定单信道抓不到,可以开启网卡的信道轮询功能,依次扫描2.4G的1/6/11三个常用信道,基本不会漏包。
内容的提问来源于stack exchange,提问作者1endell
相关产品推荐
相关产品推荐

