我正在尝试捕获程序在执行期间从服务器发送和接收的数据。服务器的地址也未知。该怎么做?
可以使用 fiddler 或 wireshark 来完成吗?
答案1
您不可能指望捕获发送到您不知道地址的服务器的数据。您必须捕获每一部分流量,然后仔细检查它们。
此外,您只能使用 Fiddler,因为它充当代理,因此您可以将其放置在客户端和服务器之间 - 换句话说,它位于客户端和服务器之间,并且您想要记录的所有流量都必须经过它。
您可能遇到的另一个问题是客户端和服务器之间的连接是否加密 - 例如使用 TLS(HTTPS)。在这种情况下,您无法捕获数据,除非您有办法在数据进入加密管道之前捕获数据(不太可能,否则您不会问这个问题)或者有办法使用假装是服务器的代理有效地执行“中间人”攻击(就加密而言)。
另一方面,wireshark 在网络层工作,因此只要您可以创建到网络的“混杂”连接(通常使用名为“pcap”的网络驱动程序)即可。您需要知道对话的起始和终止 IP 地址,而且加密连接会使其变得毫无用处。