通过Wireshark解析HTTP请求?

通过Wireshark解析HTTP请求?

有没有办法在 wireshark 中解析 HTTP 请求数据?例如,我可以在 HTTP GET 请求(由我的机器发送)时公开请求参数,这样我就不需要读取(有时)截断的 URL 并自己找到它们了?

我使用 Firefox 上的 Tamper Data 和 Firebug 来分析这些请求,但它们不像用于监控我的网络接口的独立工具那样可靠,但 wireshark 将有关 HTTP 流的数据保存得太原始了。

如果你们知道任何其他可以执行此操作的独立工具(必须与 Linux 兼容),请告诉我。

谢谢!

答案1

当然,你可以用 tshark 来做:

tshark -n -R http.request -s 2000

如果您在非标准端口上运行 http,比如代理的 8000,请确保添加“-d tcp.port==8000,http”,这样它就会知道将端口 8000 解码为 http 流量。

答案2

你有没有尝试过http://www.pcapr.net/xtractr? 它使用 tshark 来索引非常大的 pcaps 并具有 HTTP 内容提取功能

答案3

不清楚您最终想要实现什么目标(即,您想要做什么分析,或者这是一般的故障排除等)。

如果您正在寻找实时 HTTP 监视器(因为您正在反对 pcapr 答案),那么仅通过代理重定向请求就可以完成工作(例如,使用 Apache 或 Squid)吗?好的,在这种情况下它不是被动监视器(与 wireshark [et al] 不同),但会为您提供 URL。然后您应该能够从访问日志中提取查询字符串。

答案4

通常我建议使用 Fiddler2 来调试 HTTP,但它只适用于 Windows,所以一个好的替代方案是使用 Charles Proxyhttp://www.charlesproxy.com/download/

您可能会在 webmasters.stackexchange.com 和/或 stackoverflow.com 上找到此类问题的更好的答案,因为此类工具通常仅用于 Web 开发,而 WireShark 是专为网络工程师设计的。

相关内容