当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 什么是 Kerberos 身份验证及其工作原理?

作者:精品下载站 日期:2024-12-14 08:19:00 浏览:15 分类:玩电脑

什么是 Kerberos 身份验证及其工作原理?


[玩转系统] 什么是 Kerberos 身份验证及其工作原理?

什么是 Kerberos 身份验证?

Kerberos 是一种网络身份验证协议,广泛应用于计算机网络中,用于验证用户和系统的身份。它提供了一种对用户进行身份验证的安全方法,确保只有经过授权的个人才能访问网络上的资源。 Kerberos 使用称为密钥分发中心 (KDC) 的可信第三方服务器来促进身份验证过程。当用户尝试访问资源时,他们会向 KDC 发送请求,然后 KDC 验证他们的身份并颁发票证授予票证 (TGT)。 TGT 用于请求服务票证,该服务票证授予对特定资源的访问权限。 Kerberos 身份验证使用加密票证系统,确保用户的凭据安全传输并且不会被篡改。

Kerberos 身份验证如何工作?

当客户端请求访问服务器时,身份验证过程开始。客户端将其凭据发送到 KDC,KDC 验证提供的用户名和密码是否有效。验证后,KDC 生成一个称为票证授予票证 (TGT) 的会话密钥,并将其发送给客户端。然后,客户端将 TGT 连同对特定服务器的请求一起提交给 KDC。 KDC 为所请求的服务器颁发服务票证,并使用会话密钥进行加密。最后,客户端向服务器提供服务票证,确认其身份并建立安全连接。

Kerberos 身份验证的好处

Kerberos 身份验证的一些优点如下:

  • 密码永远不会被窃听,因为它们不通过网络传输。
  • 用户只需在本地工作站上输入密码,即可防止密码存储在远程服务器上。
  • Kerberos 中使用的加密技术使密码猜测变得更加困难。
  • 它支持单点登录 (SSO),减少用户记住多个密码的需要。
  • 被盗的门票很难重复使用,因为它们需要相应的验证器。
  • Kerberos 允许集中管理身份验证,从而更轻松地保护一小组受限访问计算机并从主机泄露中恢复。
  • 用户帐户管理也集中化,简化了管理流程。

Kerberos 身份验证的组件

Kerberos 身份验证的核心组件包括:

Authentication Server (AS)

AS负责验证用户的身份并提供初始的票证授予票证(TGT)。

Ticket Granting Server (TGS)

TGS 负责颁发用于访问特定服务的服务授予票证 (SGT)。

Key Distribution Center (KDC)

KDC 作为一个包含 AS 和 TGS 的组合实体。它存储用户的凭据并负责身份验证和票证授予。

Client

Service Server

服务服务器托管所需的服务并验证客户端提供的 SGT。

Tickets

票证是由 KDC 颁发的加密凭据,客户端使用它向服务服务器证明其身份。

Encryption and Decryption Keys

Kerberos 使用对称密钥加密技术,因此加密和解密密钥在保护组件之间交换的消息方面发挥着至关重要的作用。

Authentication Protocol

Kerberos 采用特定的身份验证协议来确保客户端、AS、TGS 和服务服务器之间的安全通信。该协议包括涉及请求、验证器和响应的各种消息交换。

Kerberos 身份验证过程

在身份验证过程中,Kerberos 会在最终用户的设备上为每个会话保存一个特定的票证。 Kerberos 感知服务会检查此票证,而不是密码。 Kerberos 身份验证发生在 Kerberos 领域内,该领域是 KDC 被授权对服务、主机或用户进行身份验证的环境。

Kerberos 身份验证包含涉及不同组件的多个步骤,其中包括:

第1步:客户端代表用户发起服务请求。

第 2 步:服务器,托管用户想要访问的服务。

第三步:AS(Authentication Server),负责客户端认证。如果身份验证成功,客户端会收到票据授予票据 (TGT) 或用户身份验证令牌,作为身份验证成功的证据。

第4步:KDC(密钥分发中心)由三个组件组成:AS、TGS(票证授予服务器)和Kerberos数据库。

第 5 步:TGS 应用程序,用于颁发服务票证。

不同类型的 Kerberos 票证

票证具有决定其用途的属性,并且可以在创建时分配或修改。这些属性包括可转发、初始、无效、可过期、可代理和可更新,如下所述。

Forwardable

可转发票证允许将票证从一台主机发送到另一台主机,而无需重新进行身份验证。

Initial

初始票证是直接签发的,而不是基于票证授予票证。

Invalid

无效票据已过时,在经过验证之前无法使用。

Postdatable

远期门票在指定时间后生效。

Proxiable

可代理票证允许服务代表主体执行操作。

Renewable

可续订票证有两个到期时间:当前实例到期时间和票证最长生命周期(通常为一周)。续订门票必须在初始到期时间之前续订才能继续使用。一旦达到最长生命周期,票据就会过期并且无法续订。

常见的 Kerberos 身份验证攻击

以下是一些最著名的 Kerberos 身份验证攻击:

SPN 扫描:此攻击涉及通过请求属于特定 SPN 类/类型的服务主体名称 (SPN) 来搜索服务。攻击者使用此技术来收集有关目标 Active Directory (AD) 环境中可用服务的信息。

银票:在此攻击中,攻击者伪造 Kerberos 票证授予服务 (TGS) 票证。通过生成恶意 TGS 票证,攻击者无需提供有效的用户凭据即可获得对 AD 环境中特定服务的未授权访问。

金票:与银票攻击类似,金票攻击涉及伪造票证授予票证 (TGT) 身份验证票证。通过创建恶意 TGT,攻击者可以建立对 AD 域的完全控制,授予自己对各种服务的未经授权的持久访问权限,而无需有效的用户凭据。

MS14-068 伪造 PAC 漏洞:此攻击利用域控制器上存在的 Kerberos 协议中的漏洞。攻击者利用此漏洞创建伪造的权限属性证书 (PAC),从而允许他们在 AD 环境中提升权限,并可能获得未经授权的访问或执行恶意操作。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯