在 SSL WebSocket 连接 (wss) 中拦截请求
Posted
技术标签:
【中文标题】在 SSL WebSocket 连接 (wss) 中拦截请求【英文标题】:Intercept requests in SSL WebSocket connection (wss) 【发布时间】:2021-05-25 17:54:55 【问题描述】:我有一个 WSS 服务器正在运行,我想拦截客户端和服务器之间的 WebSocket 消息。
我能够使用 WS(无 SSL)拦截 WebSocket 消息,但使用 WSS(使用 SSL)没有任何成功。我收到关于自签名证书的错误,我的测试客户端 (wscat) 不想使用该证书。 (证书链中的自签名证书)
最后,我如何能够拦截来自不同桌面应用程序的连接?那么假设应用程序 A 试图连接到 WSS 服务器,我将如何在不告诉桌面应用程序使用代理的情况下拦截它?
谢谢!
与上述问题无关,但由于此错误,我也无法代理 HTTPS 请求:
sslv3 警告证书错误
【问题讨论】:
【参考方案1】:我收到关于自签名证书的错误,我的测试客户端 (wscat) 不想使用该证书。
这个问题实际上是关于 wscat 而不是 mitmproxy。 https://***.com/a/58149466/934719 提到您可以将 -n
传递给 wscat 以禁用本地测试的证书检查。
最后,我如何能够拦截来自不同桌面应用程序的连接?如果应用程序 A 试图连接到 WSS 服务器,如果不告诉桌面应用程序使用代理,我将如何拦截它?
如果您无法告诉桌面应用程序使用代理,那么将其设置为reverse proxy 可能是最简单的。
【讨论】:
啊,好吧!如果我使用反向代理,我可以只“收听”所有消息并阅读并可能修改它们,然后将它们发送到原始服务器/连接吗? “隐形”代理不是更好吗?不过,不确定反向代理是如何工作的。 说,桌面应用程序连接到111.222.333.444:1234
的 WSS 服务器,我该如何拦截?以上是关于在 SSL WebSocket 连接 (wss) 中拦截请求的主要内容,如果未能解决你的问题,请参考以下文章