为什么 CA 颁发的证书被认为比自签名证书安全得多

信息安全 tls 证书颁发机构
2021-08-21 18:16:54

我查看了其他 Stack Exchange 帖子,解释了为什么自签名证书不如 CA 颁发的证书安全,并且这些页面中的大多数都说同样的事情:

如果它是自签名的,并且第一次客户端 - 服务器握手被拦截,中间人可以从服务器接收加密数据,解密它,用它做坏事(改变它或将它发送给黑客现在谁有你的密码),然后用假证书再次加密。

但是这个系统是基于这样一个事实,即 CA 确保您确实拥有该域CA 的检查方式是向您发送一封包含验证码的电子邮件。这个网站上的每个人都知道电子邮件非常不安全。似乎很奇怪,所有关于安全的 SSL 证书都依赖于这样一个不安全的系统。他们为什么不使用更强大的验证方法,例如在主页添加一段代码或创建 DNS 记录

3个回答

CA 签名证书实际上并不比自签名证书更安全,因为加密级别是相同的。但两者之间的信任程度却存在很大差异使用自签名证书访问网站的访问者必须相信该证书是由网站所有者生成的,因为网站说它是。没有简单的方法来辨别当前是否发生了中间人攻击。使用 CA 签名的证书,现在用户可以相信站点和第 3 方都同意证书是由站点所有者生成的,因此中间人攻击将更难实施.

注意:原始问题已被编辑;以下陈述适用于前面的措辞,但我将其留在这里,因为它仍然提供信息

在您的问题中,您声称某些 CA 会在不确保您拥有该域的情况下颁发签名证书。如果这是真的,那么您的假设可能会有一些有效性,即某些 CA 证书并不比自签名更值得信赖。不过幸运的是,任何广受信任的 CA 都不会在没有验证您拥有该域的情况下颁发签名证书。在您的评论中,您提到验证可能就像接收电子邮件一样简单,并且您质疑其安全性。

我认为质疑接收电子邮件的安全性是件好事,但您必须承认,接收电子邮件与根本没有验证完全不同。您确实有一点暗示,那些更便宜的证书的可信度可能不如其他验证级别(可能包括在 Web 服务器上安装代码),这就是为什么存在不同级别的验证。不过可以说,由于大多数访问者不检查证书,也许更昂贵的证书实际上并不比最便宜的证书好多少,除了最昂贵的“绿条”电动汽车证书。

所以,从某种意义上说,我同意你的暗示,也许获得 CA 签名证书的最低标准应该提高到不仅仅是接收电子邮件,但就目前而言,这就是我们所拥有的,而且它仍然比没有什么。

任何允许您为任何域购买证书的 CA 都可能很快在普通浏览器中获得其受信任状态。过去存在允许这样做的缺陷和错误,但它们通常在被发现时会被关闭(注意这不包括国家级玩家,他们无疑会以这种方式滥用 CA 模型)。

CA 系统的浏览器用户的主要好处是他们不必尝试确定是否单独信任每个证书。受信任的根证书与浏览器一起分发,这使用户可以轻松确定是否信任给定的证书。

如果没有这个,用户将不得不查看每个证书。当他们试图确定它是否合法时,这并不是一个真正站得住脚的模型。

这并不是说 CA 模型没有广泛的缺陷,但对于大多数用户来说,它是比自签名证书更好的解决方案。

证书根本与安全无关!证书是关于真实性的!

证书中的密钥是为了安全!证书是一种向此密钥添加一些元数据的方法。

您可以在自签名或 CA 证书中拥有相同的公钥。加密的安全性将完全相同。只是有了自签名证书,您就是任何人,而有了 CA 证书,您至少是“根据 CA 的说法,xyz.domain 的所有者”。

想想一个人站在你的前门。这个人告诉你一些信息。证书可以是此人向您显示的任何 ID,因为 ID 是有关此人的元数据。

当然,任何人都可以走到你家门口,给你看一些用蜡笔手绘的纸,上面写着他们是一名警察。但是,如果这个人告诉你,你会离开你的房子吗?可能是,他们真的是一名警察,必须疏散你,但只有手绘蜡笔ID,你可能会怀疑这是否合法。

如果这个人站在你家门前,拿着正确的警察身份证,也许有一些全息图或他们用来制作的任何东西更难伪造,一辆警车停在他身后,里面坐着另一个穿着警服的人,你很可能相信这个人更真实的是警察!

当然,你仍然可以伪造警察身份证,穿上警服,然后将汽车涂成警车,但这比用蜡笔画身份证要多得多。说“有可能伪造警察身份证,所以我们应该接受蜡笔身份证,这样警察可以更便宜地制作身份证”不是解决方案。

自签名证书就像一个人向您展示用蜡笔绘制的 ID。每个人都可以在几秒钟内做到这一点,它真的没有任何价值。这就是浏览器不接受它们的原因。

现在到您的电子邮件问题:是什么让您相信电子邮件在任何方面都比 DNS 或 http 不安全?如果您想从 CA 接收电子邮件,您必须 MITM CA 和电子邮件服务器之间的连接,您必须更改 DNS/MITM CA 和 DNS 服务器之间的 DNS 查询如果您可以更改/MITM DNS 服务器,您还可以创建任何 DNS 记录或更改 A 记录,从而将代码添加到 http 站点!因此,如果您可以 MITM CA 和电子邮件服务器之间的连接,不是DNS 或 Web 服务器和 CA 之间的连接,那么电子邮件的安全性就会降低。IMO 不太可能。

对于 MITM 来说,公共 wifi 网络是微不足道的。因此,如果浏览器接受自签名证书,则可以自动记录和更改该网络中任何人访问的任何网站。有很多工具可以做到这一点。将任何流量重定向到此工具,它会自动为任何请求的域创建一个新证书,将流量转发到真实服务器并记录它。根本没有太多工作。如果您想使用 CA 证书执行此操作,则需要使用 CA 即时验证每个请求的域,并且基本上破解 CA 或其上游提供商。

在咖啡馆或相关环境的公共 wifi 中,窃听或(wo)中间人非常容易。窃听 CA 数据中心和网络托管商之间的光纤电缆是完全不同的程度。