gpt4 book ai didi

python - 如何转储http流量?

转载 作者:可可西里 更新时间:2023-11-01 16:30:38 25 4
gpt4 key购买 nike

我正在使用网络服务,我需要获取所有 HTTP 请求和响应的转储,以便我可以调试设备之间的互操作性。

我有一台带有 3 个桥接网卡的小型电脑,因此它充当集线器,我可以利用流量。我正在寻找一种轻松转储 HTTP 流量的方法,以便我可以分析两个设备交换的 SOAP 消息。

因为我更喜欢用 python 实现它,所以我尝试使用 HTTP extension 的 scapy , 但它似乎不起作用,因为我看到请求被解析了三次(我想知道这是否是由于使用了网桥),但我看不到响应。

还有其他方法可以实现这样的工具吗?我更喜欢 python,但它不是强制性的。

又是一个小问题

我添加了一个子问题:通过使用我在上一个问题中链接的 HTTP 解释器,我发现有时我收到的数据包仅被识别为 HTTP 而不是 HTTPRequest 或 HTTPResponse。这样的数据包看起来是压缩的,我认为它们与响应主体不适合单个数据包这一事实有关。 scapy 有办法将这些数据包合并在一起吗?我需要一种方法来获取消息的正文。同样,不仅在 python 中,而且不仅在 scapy 中。

最佳答案

我最终通过在管道中使用 tshark 并使用 python 脚本解析其输出解决了我的问题。大多数解码事件由以下命令执行

tshark -l -f "tcp port 80" -R "http.request or http.response " -i br0 -V

输出解码后的 HTTP 数据包。我的脚本会执行所有必要的操作。

关于python - 如何转储http流量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17616773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com