【问题标题】:Why can't I filter http in Wireshark?为什么我不能在 Wireshark 中过滤 http?
【发布时间】:2021-02-11 21:10:31
【问题描述】:

总的来说,我是网络和 Wireshark 的新手,但有一件事我真的很坚持。

我打开 Wireshark,开始嗅探,然后我使用 HTTP 和 HTTPS 访问了不同的网站。 我停止了嗅探并试图过滤掉“http”和“https”(不同的尝试),但它什么也没显示。 在“协议”列中,我只看到 TCP、UPD、DNS、TLSv1 等。但没有 HTTP 和 HTTPS。 什么可能导致这种情况? 谢谢

【问题讨论】:

  • 欢迎来到 Stack Overflow!您可以编辑(问题底部的按钮)您的问题以包含您访问的网站吗?您使用哪个浏览器访问它们?如果您包含指向此流量的数据包捕获的链接,也可能会有所帮助。

标签: http networking wireshark


【解决方案1】:

Wireshark 无法查看应用程序数据,因为它使用 TLS 加密。这就是为什么 Wireshark 在协议栏中使用 TLS 和 TLS 版本而不是 HTTPS。

如今几乎所有的大型网站都在使用 HTTPS。当您尝试使用 HTTP 时,连接将被重定向到 HTTPS。有不同的重定向方法,Wireshark 可能无法获取足够的数据来判断通信是否为 HTTP。这就是为什么您可以在协议列中看到 TCP 而不是 HTTP。

所以你可以用 TCP 端口过滤数据包:

tcp.port == 80 或 tcp.port==443

【讨论】:

  • "当您尝试使用 HTTP 时,连接将被重定向到 HTTPS。" => 这取决于客户端是否请求它以及服务器是否支持它。如果服务器不是这样设置的,就不会发生这种情况。
【解决方案2】:

您可以借助 Wireshark 轻松过滤 HTTP 流量。

参考:How many http and https connections established in wireshark?

您甚至可以从十六进制格式获取附加信息,例如源 IP、目标 IP、标志等。参考链接, How to obtain the source IP from a Wireshark dump of an HTTP GET request

【讨论】:

    猜你喜欢
    • 2013-11-20
    • 2012-10-16
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 2012-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多