我希望能够使用 tshark 或 tcpdump 过滤仅初始 GET 请求。这必须适用于 HTTP 和 HTTPS 流量。这就是我目前所拥有的...
tshark -R '(http.request.method == "GET") && (http.request.uri =="/")'
这会返回所有 HTTP 流量的 GET 请求,但当我访问 HTTPS 站点时什么也不做。任何想法都会很棒!谢谢
最佳答案
“https”是 HTTP-over-SSL/TLS-over-TCP。 “SSL/TLS”部分意味着原始 TCP 段包含加密数据,因此它们不包含字符串“GET”(除非纯属意外,加密过程中发生了某种情况)转换为包含 0x47 0x45 0x54 的字节序列。
这意味着任何执行过滤的程序都必须解密流中的数据。 tcpdump 不支持解密 SSL/TLS; Wireshark/TShark can, in some cases, be configured to decrypt SSL/TLS traffic, if you can supply it with the information required to do so .
关于http - 在 tshark 或 tcpdump 中过滤仅初始 GET 请求。包括 HTTP 和 HTTPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13125586/