wcf - 为什么我可以在嗅探器中将 SSL 通信视为纯文本?

标签 wcf security http ssl sniffing

我已经创建了 WCF 服务并通过 ssl 共享它。我对安全性知之甚少,但我很好奇为什么我可以在 httpAnalyzer 中将整个通信视为纯文本,即使 POST 是通过 https 发送的?

当我的客户端应用程序调用 wcf 服务时,我可以在嗅探器中看到它 - 密码等。

这是否意味着 SSL 仅适用于较低层 - 同时传输数据?所以每个恶意应用程序都可以嗅探客户端的通信,而加密只能保护我们免受中间人攻击?

最佳答案

SSL 确实比 HTTP 工作在“更低层”。根据OSI Model , SSL工作在 session 层,而HTTP工作在应用层。

这些客户端 HTTP 分析器中的大多数都在浏览器内工作,在 SSL 逻辑处理之前分析应用层上的 HTTP 流量。所以看到普通的 HTTP 请求是完全正常的。

关于安全性,安装在浏览器中的恶意应用程序确实可以读取流量。但是一旦它被 SSL 层处理,恶意应用程序就很难读取流量。

SSL 的工作原理是首先向作为客户端的您验证服务器。 (我是否与我真正想与之交谈的人交谈)。由于您事先无法了解所有服务器及其证书,因此您可以使用一些众所周知的根证书,这些证书已预装在您的操作系统中。这些用于检查某个服务器是否可能被已知的服务所知。 (我不认识你,但一些非常重要的服务器告诉我你确实是你所说的那个人)。

此身份验证步骤独立于流量加密。没有程序可以通过“安装根证书”来解密任意 SSL 流。 (如前所述,从您安装操作系统的那一刻起,这些根证书就已经在您的计算机上 =)

但是如果恶意程序能够让您相信您正在与合法服务器对话,例如使用伪造的根证书,而不是实际与恶意软件对话,它能够看到 SSL 流量的内容是。但话又说回来,你是在与邪恶的程序本身交谈,而不是你打算与之交谈的服务器。然而,HTTP 分析器不是这种情况

简而言之,这是 SSL 的工作原理,希望能回答您的问题。

关于wcf - 为什么我可以在嗅探器中将 SSL 通信视为纯文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16882553/

相关文章:

WCF Azure 长时间运行操作

c# - 允许我查看/编辑请求 XML 的 WCF 测试客户端

c# - Entity Framework 是否支持父级引用 0..1 个子级,子级引用 1 个父级?

HTTP Request\Response Header 语法

xml - 六个不同的更新流是如何工作的?

asp.net - 如何在asp.net中进行301永久重定向

通过 netTcp 的 WCF 自定义安全性

php - 防止 XSS 攻击的新方法

php - 使用时间戳生成 token 的安全性如何?

rest - 如何保护 API 端点以报告客户端 JS 错误以防止垃圾邮件(如果有必要)?