首页
学习
活动
专区
圈层
工具
发布

HTTPS拦截
EN

Stack Overflow用户
提问于 2011-11-28 17:34:56
回答 3查看 1.9K关注 0票数 2

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

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-28 17:45:49

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

公司代理需要动态创建与原始证书相似的证书,并将这些证书提供给客户端。所有信息都可以从真正的证书中获取,唯一的区别是签署证书的CA。

然而,至少google chrome会抱怨google所有的域名,因为他们有一个明确的白名单,CA可以在白名单上签署google域名使用的证书。

票数 5
EN

Stack Overflow用户

发布于 2011-11-28 17:41:44

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

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

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

票数 2
EN

Stack Overflow用户

发布于 2011-11-28 17:37:23

这在一定程度上是正确的:您描述的过程可以工作,但客户端将被通知服务器证书不是预期的证书(未认证,分配给另一个站点)。因此,在他们不知情的情况下透明地做这件事是不可能的,但这在企业环境中可能是可以接受的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8293873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档