行业新闻与博客

我们来谈谈一些常见的 PKI 证书管理错误 !

公共密钥基础设施有许多移动部件,这意味着PKI证书管理错误有足够的空间


公钥基础结构是大多数组织加密实现的支柱。构建良好的 PKI 可以处理您组织的一系列职责,从身份验证到加密,再到确保文件和电子邮件的完整性。但是 PKI 很复杂,任何公司或组织都可能犯下许多常见的 PKI 证书管理错误。 


特别是如果没有聘请专家来管理 PKI 。

 

即使组织能够雇用专家(甚至是他们的团队),也无法保证他们的方法是正确的。毕竟,PKI 正在不断发展,正如您所看到的,如果您不能保持领先地位,那么您最终会犯一些非常严重的 PKI 证书管理错误。 今天我们将讨论一些常见错误以及贵公司可以采取哪些措施来避免出现这些 PKI 证书管理错误。


让我们首先快速了解一下公钥基础设施

公钥基础设施,或PKI,乍一看似乎是一个难以理解的概念,但一旦你解开它,这一切都是有道理的。PKI由两个方面促成:数字证书和公钥/私钥对。

为了便于讨论,我将简化一些事情,但让我们从根证书开始。根证书是PKI的核心。这些数字证书是普遍信任的,每个数字证书的副本都保存在每个用户的计算机系统的根存储中。根证书颁发机构,即拥有这些受信任根之一的CA,可以从这些根颁发证书。





当我们说问题证书时,真正意味着证书签名请求被呈现给 CA,然后 CA 使用其根的私钥对证书进行数字签名。或者至少,从理论上讲它是如何运作的。实际上,根损坏的威胁是如此严重,以至于 CA 启动了 Intermediate Roots。中间Root 由受信任的根签名,尽管不是根存储的一部分,但它授予其受信任状态。然后,CA 可以使用中间根的私钥来签发最终用户或叶证书,从而颁发证书。

 还有一件事,可能有多种中间体。有时,CA 会为自己旋转中间件,或者它可以向 Sub-CA 发出另一个中间根以供子CA 发布。所有这些都创造了一种称为证书链的东西。当向客户端提供叶子证书时,它会查看证书上的数字签名,并在链条后面返回证书,该证书的私钥对其进行了签名。它继续读取签名并跟随链接,直到它到达其信任存储中的一个根。只要叶证书可以链接回受信任的根,它就会受到信任。如果它不能客户端的浏览器发出错误。



我刚才所描述的,从根 CA 一直到叶子证书是由公钥基础结构组成的。在 SSL / TLS 上下文中,当正确部署时,任何客户端都可以使用公共密钥对与其关联的端点进行身份验证,并安全地向其发送对称会话密钥以用于通信。 


简而言之,这就是 PKI。


散布一些常见的PKI证书管理错误


 现在让我们谈谈我们看到的一些最常见的PKI证书管理错误。我们与企业客户,大公司和中小企业合作。所有这些都有不同的需求和痛点,但也有一些常见的问题,几乎每个人都遇到过。 虽然这个列表远非全面,但希望它能够帮助您纠正目前困扰组织实施的任何PKI证书管理错误。


在CA Hierarchies上花费太多时间


在创建 PKI 之初,只要你自己滚动,你就会想要把所有东西都映射出来。让我们面对现实,对于 IT 人群来说,所有这些盒子和线条都可以带来很多乐趣。这种奇怪的方式几乎是性感的,只有真正了解系统架构的人才能欣赏。不幸的是,我们看到的最常见的 PKI 证书管理错误之一是,它太容易让人分心 - 担心您的离线根,策略/中间 CA,在线颁发 CA 等的层次结构。

是的,如果您正在构建自己的,那么您将需要首先设置一个真正脱机的根 CA,启动几个中间根来发布,您需要使用可靠的硬件来保护它们安全模块(HSM)。但是,还有很多其他事情你也需要担心。这些并不重要。我们将在一分钟内找到那些人。

 但首先,绘制所有这些图表的趋势是,你最终可能会使一切变得过于复杂。这只会让你头疼,因为它最终会变得更加昂贵,管理也更复杂。理想情况下,管理良好的PKI最终会节省您的时间和压力 - 而不是添加它。






没有花足够的时间在其他配置细节上


 虽然在 CA 层次结构上花费太多时间很容易,但我们看到的另一个最常见的 PKI 证书管理错误是没有在其他移动部件上花费足够的时间。这是一个错误,因为在设置的这个阶段未能做出正确的决定意味着如果您想稍后更改任何内容,则必须完全重新部署所有内容。


 您可能从未考虑过证书安全策略的内容,您可能甚至不知道它是什么,但您绝对不应该让它阻止您定义一个。例如,当您使用商业 CA 获取 SSL 证书时,您不必担心证书撤销列表(CA会这样做),但如果您正在启动自己的PKI,则责任落在您身上。您是否需要在内部为此设置一个或两个 OSCP(在线证书状态协议)服务器?你需要一个外用吗? 


正如 Ted Shorter,认证安全解决方案的首席技术官所说:


 “PKI 以证书政策(CP)和证书实践声明(CPS)的形式享有明确的政策和实践定义结构。这些是用于定义管理 PKI 的要求的优秀框架,以及实现满足这些要求的方法。创建这些文档可能是一项艰巨的任务。但是,重要的是要注意,简单地逐字复制其他人的 CP / CPS 文件集是不够的; 这些工具只有真正代表您组织的PKI要求和操作流程才有价值。”


 让我们来看看一些配置风格的PKI证书管理错误......

使用过时的算法,密码和协议

您希望 PKI 从大图的角度来看具有两个关键属性:可扩展性和长期可行性。这两个属性都取决于选择正确的配置。也许没有哪个比选择密码和协议更重要。公钥密码学不断发展,算法来来往往,密码变化 - 如果你不小心你的整个PKI可能会在实施它的几年内过时。


这就是为什么进行研究并为PKI实现选择正确的算法和密码非常重要的原因。这里有一些例子:

1.SHA-1 在 2015 年被弃用,我们现在使用 SHA-2。如果您在 2014 年构建了 PKI 并选择了 SHA-1,那么您现在就遇到了麻烦。

2. TLS 1.3 刚刚由IETF最终确定并发布为 RFC 8446。这代表了 TLS 协议的最新,最安全的版本。绝不应使用 SSL 2.0,3.0 和TLS
 
3. 1.0。TLS 1.1 也是不明智的。 很快,业界将不得不决定继续使用 RSA 进行非对称加密仍然比使用椭圆曲线加密更有效。




选择错误的键大小


 密钥在 PKI 中至关重要 - 甚至在名称中也是如此。密钥用于加密和解密数据,它们需要足够强大,以便没有人可以猜测它们的值,复制它们或破译加密。PKI 特指非对称加密(尽管对称加密也起着作用)。


钥匙的坚固程度或其硬度取决于其长度。密钥越长,它就越安全。例如,标准 RSA 私钥长度为 2,048 位。早在 2002 年,1024 位密钥就足够了,今天他们不是。在另外十年中,2048 位密钥也可能已经过时。它开始变得棘手,并且回到我们之前的观点,是随着非对称密钥变大,使用它们所需的处理能力以比实际密钥强度大得多的速率增加。最终,我们必须切换算法,因为 RSA 会变得笨拙。

这是需要认真考虑的事情。

最终,在做出最终决定之前,您必须权衡安全需求与性能成本,并考虑任何法规或合规性要求。



不期待PKI增加到您的网络的额外流量

无论您如何配置 PKI,它都会为您的网络负载增加流量。最简单的PKI证书管理错误之一是忘记考虑 PKI 将对您组织的网络产生的影响。究竟有多少影响取决于您的架构选择。同样,这是你想要在一开始就想到的东西 - 而不是你去的地方。 


以下是您可以从中获得额外流量的详细信息:


证书签发

 

在查询用户详细信息和响应时,您将不得不考虑目录或数据库请求,以及对 CA 发出的任何证书请求的带宽。显然,这种流量会在您首次推出时达到峰值,并且无论何时您必须进行续订或大规模重新发布。 


电邮用法

 

PKI 的其他应用之一是用于电子邮件和文档签名。如果您决定使用此功能部署 PKI,则在发送签名或加密的电子邮件时,您可以依靠额外的流量。这些电子邮件不仅需要花费更多的带宽才能发送,它们每个都需要进行目录查找。 


证书撤销列表


正如我们之前所述:如果您已经开发了自己的 CA,那么您将需要维护自己的 CRL。PKI 越大,CRL 越快。如果每个用户必须定期下载整个 CRL,那么它不仅会增加流量,而且还会增加验证所需的时间。当然,使用OCSP可以稍微减轻这种影响。


 目录复制


 根据您存储证书的方式,您可能也会在这里查看一些额外的流量。如果您正在使用 LDAP(轻量级目录访问协议)目录,则在较大的实现中,这些目录将通过网络进行复制。虽然 LDAP是为快速,廉价的查找和复制而设计和优化的,但正确配置它并使其与其他现有网络安全策略很好地配合 - 是一项具有挑战性的任务。


不安全地存储证书和密钥


 虽然我们讨论的是证书存储的主题,但让我们来谈谈另一种常见的 PKI 证书管理错误:密钥和证书的存储不当。我们一直在谈论关键安全的重要性,这是有充分理由的。关键的妥协可能使组织陷入瘫痪。 


普遍受尊敬的美国密码学家和安全研究员布鲁斯施奈尔(Bruce Schneier)以如此严厉的程度写出关键安全性,你不禁对你不做的一切感到有点内疚:

 任何基于 CA 的系统中最大的风险之一是使用您自己的私有签名密钥。你是如何保护它的?您几乎肯定没有拥有物理访问控制,TEMPEST 屏蔽,“空中墙”网络安全和其他保护的安全计算系统; 您将私钥存储在传统计算机上。在那里,它受到病毒和其他恶意程序的攻击。即使您的私钥在您的计算机上是安全的,您的计算机是否处于上锁的房间内,并配有视频监控功能,这样您就不会知道任何人使用它了吗?如果它受密码保护,猜测密码有多难?如果您的密钥存储在智能卡上,那么该卡的抗攻击能力如何?[大多数都非常弱。]如果它存储在真正的抗攻击设备中,


 虽然这可能会把事情发挥到极致,但是如果你在电子表格,拇指驱动器,普通硬盘驱动器甚至可以远程访问的在线地方保存关键字符串,那你就犯了一个错误。坦率地说,您可能应该使用 HSM。 


但是,如果不这样做,至少要确保已经充分锁定了您正在使用的数据库或目录。将访问密钥库的人限制为仅限少数几个高级别人员也是一个好主意。 

证书生命周期选择不良 


这不仅仅是确定您的证书何时到期 -尽管这是其中很重要的一部分。如果您在自己的网络上使用自己的私有 CA,则无论您想要多长时间都可以颁发证书。


更长的证书需要更频繁地更换,但最终会因为新的算法和密码受到欢迎而过时。

 更短的证书需要更频繁地更换,如果你有自动化,这不是问题,但正如我们稍后将讨论的那样,更快的密钥轮换是一个很好的安全选择。

找出对你的组织最好的东西及其 PKI 是你需要自己完成的一个微积分,但是你需要提出一个完整的计划 - 一个发布流程 - 不仅包括初始推出,而且整个证书生命周期。

 了解如何处理撤销,密钥存档,密钥恢复和所有其他突发事件可能也是一个好主意。



不常用密钥和 PKI 证书轮换

 

正如我们刚刚提到的,定期轮换证书和密钥是一个很好的电话。您是如何定期回到组织自己的发行和生命周期政策,但最好是定期发生 - 每六个月或更短时间被认为是最佳做法。如果您的 PKI 包含您自己的私有 CA,颁发这些证书除了带宽之外不会花费任何费用。


 正如安全研究员 Scott Helme 建议的那样,不要等到有效期才能旋转密钥:


 有了 39 个月,甚至是 825 天的证书,我们实际上会看到按键在这些间隔而不是之前旋转。这是一种糟糕的卫生习惯,使用给定加密密钥的时间越长,就越有可能面临妥协,我更倾向于在可能的情况下看到推送临时密钥而不是静态密钥。 


短暂是一种说“ 会话 ”键的奇特方式。无论如何,通过以常规节奏交换证书和密钥,您可以最大限度地降低风险。即使存在某种妥协,证书和密钥也会在几周内过时。


滥用自签名证书 

对于拥有自己的私有 CA 和大型 PKI 的大型企业,使用自签名证书是司空见惯的。在您自己的网络中,您可以手动将正确的根添加到组织的信任存储中,这些自签名证书可以正常运行(它们也适用于测试环境)。

 但是,我们看到的最常见的 PKI 证书管理错误之一是组织试图在面向公众的域或 IP上使用自签名证书。这不起作用。组织外部试图访问站点,服务器,应用程序的任何人 - 无论如何 - 都会出现连接错误。这会发出有关贵组织的错误信号。
 
至少对于面向公众的属性,请使用受信任的 CA

 


缺乏自动化


 一旦达到一定的规模,自动化几乎是必需的,但即使你认为自己不够大,它仍然是一个值得探索的选择。与任何形式的自动化一样,PKI的自动化方面可提高效率并减少人为错误的可能性。自动化有助于更新证书和密钥。它还可以跟踪和存储与证书和密钥相关的数据,例如:

  •  已签发多少份证书? 
  •  这些证书是什么?
  •  我们目前拥有多少把钥匙?
  •  谁要求这些?
  •  谁可以访问它们? 

你知道,跟踪的事情会很好。如果没有自动化,您就会试图将信息整理到由人类维护的电子表格中,并且可能会产生一系列问题。

缺乏可见性


 我们将介绍的最后一个 PKI 证书管理错误也是最危险的:缺乏对 PKI 的可见性。具体来说,你的叶子证书。您需要能够查看已颁发的所有证书,签发的证书,到期时间 - 您需要完整的库存会计。


这实际上是您可以防范恶意证书的唯一方法 - 有效的证书已被泄露。如果证书中包含您的某个域的名称,则攻击者可能冒充您的组织并造成各种伤害。关键是不要进入关于流氓证书的杂草,这是我们关于需要了解整个 PKI 的观点。这是适当的证书管理功能。

 幸运的是,有许多很棒的工具可以帮助您从 Comodo 和 DigiCert 等证书颁发机构以及 Venafi 等世界级第三方安全公司进行证书管理。对您和您的组织最有效的方法取决于您自己的独特情况,但有一定的规模,您将不会有某种管理设备 - 即使您自己构建 - 可以让您可见和控制整个 PKI。



避免最常见的PKI证书管理错误

正如我们所讨论的那样,在设置组织的PKI时,不存在潜在的PKI证书管理错误,但如果可能的话,或许最好的建议取代所有这些只是两个字:


 别急。

 

花时间为组织实施PKI。在设置正确的策略和选择正确的配置方面做必要的研究。确保咨询将成为利益相关者的任何人,尝试预测这可能与其他网络安全策略冲突的地方。


 慢慢来。


 不要害怕寻求帮助。这是复杂的。有时甚至专家也需要专家。最好找到合适的人来实施正确的实施 - 一个可以扩展并保持长期生存能力的人 - 而不是试图在内部完成所有工作并将其搞砸。从长远来看,这只会让你付出更多的代价。


 一如既往,请有任何问题联系我们!我公司 ssl 证书团队。

需要帮助吗?联系我们的支持团队 在线客服