混杂模式是否足以嗅探 wifi 网络中的数据包?

信息安全 网络 嗅探
2021-08-16 13:20:29

我已连接到我的 WiFi 网络,我想捕获和分析其他客户端与网关交换的数据包。我不想修改这些数据包的内容,也不需要读取每个数据包的内容。

其实wlan配置如下:

  • 路由器 192.168.1.1
  • 我用来嗅探流量的笔记本电脑 192.168.1.9
  • 我的智能手机 192.168.1.2

所以我希望能够看到我的智能手机和路由器之间的(部分)流量。


为了实现这个目标,我将无线接口设置为混杂模式,sudo ip link wlo1 promiscuous on并检查它是否启用netstat -i

Kernel Interface table
Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
enp8s0     1500 0     28962      0      1 0         22923      0      0      0 BMU
lo        65536 0      7294      0      0 0          7294      0      0      0 LRU
wlo1       1500 0     29469      0      0 0         12236      0      0      0 BMPRU

标志列P上的表示混杂模式,所以我假设它已启用。由于混杂模式已打开,我应该会看到我的 NIC 可以捕获的所有流量。然后我打开wireshark,开始在wlo1接口上捕获流量,但我没有看到任何来自源的数据包192.168.1.2,我正在用智能手机上网(所以,我正在生成流量)。

我究竟做错了什么?

编辑:我发现了问题。

该接口仍处于托管模式。我试图手动添加一个新界面。iw phy phy0 info告诉我的网卡支持监控模式,但如果我尝试添加一个新接口,sudo iw phy phy0 interface add mon0 type monitor我会得到以下信息:

blackbrain@blackbrain-host:~$ iw dev
phy#0
    Interface mon0
        ifindex 5
        wdev 0x3
        addr 34:68:95:03:48:17
        type managed
    Interface wlo1
        ifindex 3
        wdev 0x1
        addr 34:68:95:03:48:17
        type managed
        channel 7 (2442 MHz), width: 20 MHz, center1: 2442 MHz

两个接口都处于托管模式。

任何的想法?

2个回答

要回答主题行问题“混杂模式是否足以嗅探 wifi 网络中的数据包?”,答案是肯定的,捕获数据包只需要一个可以置于“监控”或“混杂”模式的网络适配器,即两种模式都有效……那部分并不难。(您在编辑中提到了这两种模式)这是假设您将 NAT 路由器与 DHCP 服务器结合使用……您是,对吗?

我承认我所学到的有关网络的所有知识都不是通过学校学习的,但是,在这种情况下,我感觉网络切换可能是个问题?

我也一直在喝酒,哈哈,但是在我在维多利亚的老地方,如果你插入我路由器上的端口,你会看到没有我发送到 Internet 的流量。那是因为网络交换机知道将流量发送到哪里,并且它只在需要查看它的端口之间发送流量。

或者,但更针对您的问题,如果您查看我的无线设备,您将不知道我在做什么.. 交换机仅将广播流量或流量传递到它不知道所有端口目的地的地方。然后,作为网桥的无线将仅将需要发送到网桥的无线部分的内容传递给无线。

话虽如此,有几种方法可以嗅探交换机,使用中间人攻击或端口泛洪。

无论如何,它不是嗅探数据包,而是更多关于解密、理解和利用被拦截的流量,这本身就是一种艺术形式。您提到您也想分析数据包......这相当困难,在某些情况下,它是不切实际的。我的意思是,要真正分析一下,这超出了大多数用户的技能水平,尽管我确信 Stack Exchange 上有一些天才,你应该喝杯啤酒。

祝你的学习经历好运!

不,混杂模式不足以嗅探无线网络上的数据包,而且影响很小。有关低级详细信息,请参阅此答案。

您需要的是监控模式。监控模式允许您的网卡接收当前频道上的所有无线帧。

您运行的命令应该可以工作:

iw phy phy0 interface add mon0 type monitor

中是否有任何错误输出或消息dmesg你也可以试试这个来达到同样的效果:

iw dev wlo1 interface add mon0 type monitor

或者,如果您似乎无法创建监控模式 vif 并且您确定卡支持该模式,请尝试将现有 vif 设置为监控模式:

ip link set down wlo1
iw dev wlo1 set monitor none
ip link set down wlo1

当然,在这种模式下,您将失去当前的无线连接,因为您不再拥有处于托管模式的 vif。但是,这应该为您提供最大的灵活性,因为您将能够自由地更改频道。