我正在尝试确定我的 wifi 网络上两个设备之间通信问题的原因。我无法在它们上安装程序来确定这个问题。
我如何监控这两个设备之间的流量?
答案1
首先,我们应该知道我们要嗅探什么样的数据包。下面的解释假设你对嗅探感兴趣传输层及以上。此外,我还假设您有一个典型的网络结构,其中有一个 AP,它位于两个设备通信的中间。
如果你有其他 Linux OS 机器,可以安装程序,那么这是可能的。假设你已经在网络中有第三台机器(嗅探器),你应该安装ARP欺骗和wireshark:
sudo apt-get 安装 arpspoof
sudo apt-get 安装 wireshark
现在你应该允许流量通过你的嗅探设备:
echo 1 > /proc/sys/net/ipv4/ip_forward
之后,我们将开始欺骗 AP 设备和我们的两台机器中的一台(我们将其称为目标设备)。我们将打开 2 个终端,并在每个终端窗口上写入以下命令之一:
arpspoof -i XXX -t YYY ZZZ
arpspoof -i XXX -t ZZZ YYY
其中 XXX 为接口名称我们将接收数据包的嗅探机。另一方面,在 YYY 上我们将写入目标 IP在 ZZZ 中网关 IP。完成后,我们将必须打开 wireshark 并开始嗅探我们在命令行中编写的接口。然后,我们应该开始看到从目标设备到网关设备的数据包。
如果您想了解更多信息,您可以在谷歌上搜索“中间人攻击”。我在这里解释的是使用 ARP 欺骗的中间人攻击。还有其他方法可以做到这一点。
最后,如果你想嗅探 链路层及以下你可以安装空军基地首先启动主接口 ifconfig wlan0 up,然后在您的网络通道上启动监控模式接口。
airmon-ng 启动 wlan0 通道
其中 CHANNEL 是一个数字。之后
airbase-ng -c 通道 -e mon0
如果我们写入,iwconfig
我们将看到新的接口 mon0。现在安装 wireshark(如果你还没有安装),然后启动 wireshark 并嗅探星期一接口,然后,我们应该看到进出该卡的所有数据包或帧。
希望能帮助到你。
答案2
使用 Wireshark。
转到“显示捕获选项”。
找到您的 Wi-Fi 适配器并双击它。
配置窗口将会出现。标记Capture packets in monitor mode
。启用此选项后,您的适配器将捕获其可以听到的所有 Wi-Fi 流量,而不仅仅是发送给您的流量。
之后单击OK
保存更改并单击Start
捕获选项窗口。您将看到所有到达您的 Wi-Fi 流量。调整频道(频率)以匹配您的设备使用的频道。
加密网络
如果您调试加密的 Wi-Fi 网络,那么您可以告诉 Wireshark 所需网络的 SSID 和密码,它将解密数据包,以便您检查它们。
Wireshark 维基描述此过程。
Wireshark 可以在预共享(或个人)模式下解密 WEP 和 WPA/WPA2。尚不支持 WPA/WPA2 企业模式解密。
简而言之:
- 转到编辑->首选项->协议->IEEE 802.11。
- 以以下形式添加 SSID 和密码
wpa-pwd:MyPassword:MySSID
WPA 和 WPA2 使用从 EAPOL 握手(当机器加入 Wi-Fi 网络时发生)派生的密钥来加密流量。除非您尝试解密的会话中存在所有四个握手数据包,否则 Wireshark 将无法解密流量。您可以使用显示过滤器 eapol 来查找捕获中的 EAPOL 数据包。
确保你理解这一点:
WPA 密码和 SSID 首选项允许您使用 URI 样式的百分比转义对不可打印或其他麻烦的字符进行编码,例如使用 %20 表示空格。因此,您必须使用 %25 对百分比字符本身进行转义。
有了它,您就可以监控 Wi-Fi 流量。