在来自伊朗的新闻中,你听说伊朗已经成功制作了假的 ssl 证书,以便他们可以找到人们的 gmail 帐户凭据。
有分析说这有可能,但很难,不知道为什么难,难在哪里,为什么你的ISP不能这样对你?
在来自伊朗的新闻中,你听说伊朗已经成功制作了假的 ssl 证书,以便他们可以找到人们的 gmail 帐户凭据。
有分析说这有可能,但很难,不知道为什么难,难在哪里,为什么你的ISP不能这样对你?
让我通过一个实际的例子来解释。
有一组浏览器隐式信任的证书颁发机构 (CA)。您可以在浏览器中查看受信任的 CA 列表。例如。Chrome 浏览器信任的 CA 可以在“Wrench Menu > Preferences > Under the Hood > HTTPS/SSL (Manage Certificates) > Authorities tab”中找到。
因此,mail.google.com 向您的浏览器提供的证书是由 Thawte SGC CA “签名”的。该 CA 被浏览器隐式信任。这些 CA 将仅在彻底(和手动)验证后颁发证书。
你和我不能欺骗 Thawte 或 Verisign 为我们签署一份假冒的谷歌证书。虽然这种情况确实会发生,但很少见,而且大多需要一些内部人员的帮助。
现在,在您自己的机器上,您可以继续创建证书,说明它们属于 google.com。但是这些证书是“自签名”的,不会被浏览器信任,因为 CA(您)不在其受信任的证书列表中。在这种情况下,浏览器会显示证书警告。
因此,现在要回答您的问题,有几种方法可以创建(或使其工作)欺骗证书:
正如我上面提到的,一个人可以欺骗 CA(受浏览器信任)为不属于您的站点颁发证书。出于这个原因,人们经常从他们的列表中手动删除受信任的 CA。天知道那个CA在那个闻所未闻的国家遵循什么程序。我见过偏执的人从浏览器信任列表中删除 CA。
CA 被黑客入侵(或被要求颁发假证书)。在这种情况下,您可以随意颁发证书。更不用说,一旦发现这种情况,这样的 CA 就会立即倒闭。
如果您将自己的 CA 明确添加到浏览器的受信任列表中,您还可以拥有 google.com 的假“自签名”证书,并且仍然设法绕过浏览器安全检查。公司可以做到。我见过(并曾在)公司出于“合规性原因”公开这样做。由于您的台式机在他们的控制之下,他们将自己的 CA 安装到您浏览器的受信任存储中,并向浏览器提供伪造的 gmail 证书 - 浏览器信任该证书,并且他们很乐意拦截您的所有对话/电子邮件。
在所有情况下 - 通过伪造证书可以获得什么:您可以 MITM(中间人)服务器和用户计算机并解密 SSL 会话。
我在上面的描述中留下了许多证书创建的细微差别,以呈现一个广泛的画面。您可以阅读Cert Patrol和观点,了解如何防止成为伪造证书的受害者,即使其 CA 位于浏览器受信任列表中。
您还可以阅读有关证书锁定的信息,这有助于防止此类证书劫持。
为您喜欢的任何内容创建 SSL 证书在技术上并不困难;那部分是微不足道的。
困难的部分是您需要由受信任的一组根证书(例如,您的 Web 浏览器包含)对其进行签名或授权和签名。
这些属于各种证书颁发机构,并受到强加密身份验证的保护,这意味着在不访问证书颁发机构保护的秘密材料的情况下,创建一个将被您的浏览器信任的证书在计算上是不切实际的。
所以,诀窍不是制作证书,而是让某人信任它。
另外,你可以看看关于 Digi Notar 的文章,去年在他们违规并分发假证书后引起了一些轰动。这些问题在于,计算机是为信任合格 CA 的证书而构建的,因此,如果您可以获得证书,则很难确保全球的每台计算机都能看到它已被吊销。