2

我对 SSL 了解不多,但我读过一些东西,我想知道是否可以拦截客户端和服务器之间的通信(例如,公司可以监控员工数据传输?)。我认为这是一项艰巨的任务,但看起来很简单。当客户端请求 https 连接时,可以指示路由器拦截密钥交换并将其自己的公钥发送到服务器和客户端(进一步它可以对漏洞流量进行编码/解码)。这是真的,还是我误解了什么?

4

3 回答 3

5

如果您控制的 CA 在员工使用的所有浏览器中都受信任,则很容易:

公司代理需要即时创建类似于原始证书的证书,并将这些证书提供给客户。所有信息都可以从真实证书中获取,唯一的区别在于 CA 签署证书。

但是,至少 google chrome 会抱怨 google 拥有的域,因为它们有一个明确的白名单,CA 可以在白名单上签署用于 google 域的证书。

于 2011-11-28T09:45:49.197 回答
2

在公司网络中,公司拥有的 SSL CA:通常安装在所有机器上。在这种情况下,公司代理可以出示将被浏览器接受的公司证书,并读取流量。

我查看证书详细信息(在浏览器的地址栏中找到),您可以检查它是否是远程服务器的预期证书,或者它是否是公司创建的另一个证书。

您可以使用例如http://www.sslshopper.com/ssl-checker.html#hostname=www.google.com来检查它应该是什么证书。(显然将主机名更改为您要使用的任何服务器)

于 2011-11-28T09:41:43.950 回答
1

部分正确:您描述的过程会起作用,但会通知客户端服务器证书不是预期的证书(未认证,分配给另一个站点)。因此,在他们不知情的情况下,不可能透明地做到这一点,但这在公司环境中可能是可以接受的。

于 2011-11-28T09:37:23.423 回答