【发布时间】:2014-05-06 11:00:58
【问题描述】:
查看 C# 上的 HttpWebRequest 和 HttpWebResponse 方法时,
我刚刚了解了HTTP POST 和HTTP GET 和HTTPS
HTTPS 表示我们发送的任何数据will be encrypted so that it is secure
即使在创建HttpWebRequest、Fiddler 的同时将一些POST 数据提交到HTTPS 站点,阅读username 和password 似乎也没有问题。怎么样?
POST https://someurl HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: some-host
Content-Length: 84
Expect: 100-continue
Connection: Keep-Alive
j_username=admin&j_password=pass*&Submit=Login
上面的网址是HTTPS,大概意思就是所有datas are encrypted。
那么Fiddler怎么会知道用户名和密码呢?
【问题讨论】:
-
因为你是客户,你的提琴手和你在同一个端点上。
Transmission与服务器之间的往来将被加密 -
Fiddler 不是 MITM 代理吗? ..您正在与 Fiddler 交谈.. Fiddler 与另一方交谈.. 因此,Fiddler 知道请求中的数据.. 它为您提供了加密它的证书。
-
@SimonWhitehead:谢谢。那么,在
case of using a browser中,browser给了certificate来加密我发送的form details? -
No.. 浏览器直接与另一端对话。这就是为什么 Fiddler 被视为“中间人”(MITM)代理的原因。
标签: c# http post https fiddler