![通过我的无线路由器嗅探和记录 HTTP 流量](https://linux22.com/image/1338165/%E9%80%9A%E8%BF%87%E6%88%91%E7%9A%84%E6%97%A0%E7%BA%BF%E8%B7%AF%E7%94%B1%E5%99%A8%E5%97%85%E6%8E%A2%E5%92%8C%E8%AE%B0%E5%BD%95%20HTTP%20%E6%B5%81%E9%87%8F.png)
我想嗅探通过无线路由器的流量。路由器由我的有线电视公司提供,所以我不想刷新固件或做任何事情,所以我的问题是:是否有任何软件或类似的东西可以安装在我网络上的其中一台计算机上,并让它记录 HTTP 请求/响应?
用例:我正在我的 Droid 上玩游戏,我想查看流量情况。
注意:我已经尝试设置代理并以此方式记录。游戏似乎绕过了我的代理设置。其他网络流量将通过我的代理,但游戏流量不会。我知道它使用 HTTP,因为游戏确实遵循我朋友的 iphone 上的代理(同一款游戏)。因此,设置代理并不是一个可行的解决方案。
非常感谢任何帮助或指导!
答案1
使用您拥有的路由器,除非它允许您将流量镜像到其上的端口,否则不会让您这样做。有几种方法可以获取流量:
一,您可以在路由器和互联网之间设置一个集线器(而不是交换机),然后将运行数据包嗅探器(如 Wireshark)的计算机插入集线器上的另一个端口。
二,您可以将一台计算机设置为无线路由器和互联网之间的网关,并使用 Wireshark 或 tcpdump 等工具捕获所有流量。
第三,设置一个连接到集线器的新无线接入点,并将互联网路由器连接到该集线器,并将一台计算机连接到该集线器并运行 Wireshark 之类的工具。
或者你可以得到一个路由器,让你将所有流量镜像到它的一个端口,然后将一台计算机插入该端口并运行 Wireshark 之类的工具。
有时,只要有合适的硬件,您就可以使用 Wireshark 捕获无线流量,如果您在互联网上搜索,就会找到一些有关如何执行此操作的操作方法。
你也可以看看使用类似无线网络
答案2
另一种方法是尝试使用伊特卡普嗅探您的 LAN。它有各种中间人技术 - 在 LAN 上最有用的是毒 ARP 中间人 (MITM) 方法(假设您的默认网关是 192.168.0.1 - 检查您的网络设置):
ettercap -T -M arp:remote /192.168.0.1/ //
一般来说,这应该将所有流量重定向到运行 ettercap 的机器 - 某些设备可能会设法避开这种方法。
如果你看到错误(“TARGET 中的令牌数量不正确(///)!!”),那么很可能是因为你的 Ettercap 版本启用了 IPv6(如上所述这里),那么您将需要使用稍微修改过的语法:
ettercap -T -M arp:remote /192.168.0.1// ///
否则,您需要检查路由器是否支持端口镜像或链路层桥接模式。Thomson/Technicolor/Speedtouch 路由器支持以太网 PPP (PPPoE) 桥接,有些路由器还可以进行端口镜像。
答案3
答案4
最便宜的解决方法 - 使用您的有线路由器作为调制解调器,然后购买支持镜像的路由器来广播您的 wifi。(*关闭有线调制解调器上的 wifi 并将新路由器硬连线到它以连接互联网 - 这样所有无线流量都会被捕获。)然后您可以选择任何连接的设备作为镜像的目标 - 选择一个具有合适存储空间的设备,并记住它只有在连接到新路由器时才能捕获。
甚至老款路由器也支持镜像,在 Ebay 上的售价不到 20 美元 - 但最好买一个好的,因为您会希望家里有快速的 wifi!