0

我们想实现一个 MITM 代理。

它应该接收来自客户端的 https 请求,解密它们并返回预先记录的响应。

这意味着代理没有直接连接到远程服务器。我知道 FiddlerCore 支持 MITM,但我怎么可能在我的场景中使用它呢?

谢谢

4

1 回答 1

1

https://groups.google.com/forum/#!topic/httpfiddler/E0JZrRRGhVg

这是一个非常简单的任务。如果您查看 FiddlerCore 中包含的演示项目,您可以了解大部分情况。

Fiddler.FiddlerApplication.BeforeRequest += delegate(Fiddler.Session oS)
  {
    if (oSession.HTTPMethodIs("CONNECT")) { oSession.oFlags["X-ReplyWithTunnel"] = "Fake for HTTPS Tunnel"; return; }
    if (oS.uriContains("replaceme.txt"))
    {
        oS.utilCreateResponseAndBypassServer();
        oS.responseBodyBytes = SessionIWantToReturn.responseBodyBytes;
        oS.oResponse.headers = (HTTPResponseHeaders) SessionIWantToReturn.oResponse.headers.Clone();
    }
  };
于 2014-07-28T20:50:17.220 回答