我对SSL了解不多,但我读到了一些东西,我想知道是否有可能拦截客户端和服务器之间的通信(例如,公司可以监视员工的数据传输?)。我认为这是一项艰巨的任务,但看起来很简单。当客户端请求https连接时,可以指示路由器拦截密钥交换,并将其自己的公钥发送到服务器和客户端(此外,它可以编码/解码空洞流量)。是真的吗,还是我误解了什么?
发布于 2011-11-28 17:45:49
如果您控制的CA在员工使用的所有浏览器中都是可信的,则很容易实现:
公司代理需要动态创建与原始证书相似的证书,并将这些证书提供给客户端。所有信息都可以从真正的证书中获取,唯一的区别是签署证书的CA。
然而,至少google chrome会抱怨google所有的域名,因为他们有一个明确的白名单,CA可以在白名单上签署google域名使用的证书。
发布于 2011-11-28 17:41:44
在公司网络中,公司自己的SSL CA:通常安装在所有计算机上。在这种情况下,公司代理可以提供浏览器将接受的公司证书,并读取流量。
如果您查看证书详细信息(在浏览器的地址栏中找到),您可以检查它是否是远程服务器的预期证书,或者它是否是公司创建的另一个证书。
例如,您可以使用http://www.sslshopper.com/ssl-checker.html#hostname=www.google.com来检查它应该是什么证书。(显然,将主机名更改为您要使用的任何服务器)
发布于 2011-11-28 17:37:23
这在一定程度上是正确的:您描述的过程可以工作,但客户端将被通知服务器证书不是预期的证书(未认证,分配给另一个站点)。因此,在他们不知情的情况下透明地做这件事是不可能的,但这在企业环境中可能是可以接受的。
https://stackoverflow.com/questions/8293873
复制相似问题