如何忽略所有与 mitmproxy 的 websocket 连接?
Posted
技术标签:
【中文标题】如何忽略所有与 mitmproxy 的 websocket 连接?【英文标题】:How to ignore all websocket connections with mitmproxy? 【发布时间】:2016-02-07 10:48:35 【问题描述】:目前,mitmproxy 似乎无法处理 websocket 连接。
我怎样才能将这些传递给客户端,以便客户端仍然可以连接到 websocket 服务器?
这是我当前的命令:
具体来说,就我而言,我目前希望客户端使用我的代理能够在 agar.io 上玩游戏,它使用 websocket 连接与(为了我们的目的,随机)托管游戏的服务器。
agar.io 连接到的游戏托管服务器示例:ws://151.80.96.51:1515、ws://37.187.171.110:1523、 ws://37.187.163.130:1518.
我已经尝试过使用 mitmproxy 的 Ignore Domains 功能(无论是从命令行还是从程序中),以及他们推荐的 TCP Proxy 功能。这是我尝试使用的模式:
但这只会阻止 agar.io 加载(灰色背景,正确的文档标题,仅此而已)。
我认为因为客户端连接到不同的服务器(不是 ws://agar.io)我不能使用简单的域忽略,但我可能错了。
虽然目前我只对 agar.io 感兴趣,但如果有一个适用于所有 websocket 服务器的解决方案,那就太好了。
那么,简而言之,我怎样才能让客户端连接到ws服务器呢?
【问题讨论】:
好吧,您已经提到了您自己需要分析的内容(您的客户端通过 Websockets 连接到哪些域?)。这样做。 @MarcusMüller 但我不能即时忽略它们,它们可能总是在变化。感谢您的反对和富有洞察力的评论,确实解决了我的问题。 @MarcusMüller 如果您知道一种即时忽略不断变化的域的方法,请分享,它将立即成为公认的答案。 【参考方案1】:如果您使用的是 mitmproxy 0.15+,则通过 --raw-tcp
应该可以完成这项工作。这会将所有非 HTTP 流量自动置于 TCP 模式。
【讨论】:
这不起作用。遇到和我之前一样的问题,页面加载不正确。 这确实有效。刚刚意识到灰色页面是由于我在网页中注入的东西造成的。谢谢。以上是关于如何忽略所有与 mitmproxy 的 websocket 连接?的主要内容,如果未能解决你的问题,请参考以下文章
mitmproxy安装与安卓模拟器的配合使用-手机APP爬虫