网络犯罪是当今生活中一个不幸的事实,无论我们谈论的是个人消费者还是整个商业世界。没有公司或组织是安全的,问题不会很快好转。专家预测,到 2025 年,网络犯罪给世界造成的损失将达到 25 万亿美元。似乎这还不够糟糕,《福布斯》预测网络犯罪分子将对移动设备造成越来越大的风险,而移动设备是当今许多人使用的设备。
什么是 Kerberos?Kerberos 是如何工作的以及 Kerberos 身份验证的解释
通过简单学习
最后更新于2022 年 12 月 21 日16190380
什么是 Kerberos,它是如何工作的,它的用途是什么?
目录
什么是 Kerberos?Kerberos 如何工作?Kerberos 的用途是什么?Kerberos 身份验证协议有什么作用?Kerberos 身份验证的好处Kerberos 对象概念和术语查看更多
网络犯罪是当今生活中一个不幸的事实,无论我们谈论的是个人消费者还是整个商业世界。没有公司或组织是安全的,问题不会很快好转。专家预测,到 2025 年,网络犯罪给世界造成的损失将达到 25 万亿美元。似乎这还不够糟糕,《福布斯》预测网络犯罪分子将对移动设备造成越来越大的风险,而移动设备是当今许多人使用的设备。
这些预测以及许多其他预测都指向了严酷的现实,即网络犯罪将继续存在,而且问题只会变得更糟。因此,数字世界渴望找到并采用新的策略来加强网络安全。
今天,我们正在研究 Kerberos 身份验证协议。让我们拉开帷幕,熟悉一下这个有效的网络协议。
让我们从了解什么是 Kerberos 及其工作原理开始。
在 6 个月内从初学者到专家!
网络安全高级执行计划探索计划在 6 个月内从初学者到专家!
什么是 Kerberos?Kerberos 如何工作?
Kerberos 是一种计算机网络安全协议,可在不受信任的网络(如 Internet)中对两个或多个受信任主机之间的服务请求进行身份验证。它使用密钥密码术和受信任的第三方来验证客户端-服务器应用程序和验证用户的身份。
Kerberos 最初由麻省理工学院 (MIT) 在 80 年代后期为 Project Athena 开发,现在是 Microsoft Windows 使用的默认授权技术。Kerberos 实现也适用于其他操作系统,例如 Apple OS、FreeBSD、UNIX 和Linux。
Microsoft 在 Windows 2000 中推出了它的 Kerberos 版本,它已成为网站和不同平台上单点登录实施的首选协议。Kerberos 联盟将Kerberos 作为一个开源项目进行维护。
该协议的名称来源于希腊神话中传说中的三头犬 Kerberos(也称为 Cerberus),它是冥界入口的犬类守护者。Kerberos 有一条蛇尾巴,脾气特别坏,尽管有一个明显的例外,但它是一个非常有用的守护者。
但在协议的情况下,Kerberos 的三个负责人分别代表客户端、服务器和密钥分发中心 (KDC)。后者作为可信的第三方认证服务。
使用 Kerberos 的用户、机器和服务仅依赖于 KDC,它作为一个提供两个功能的进程工作:身份验证和票证授予。KDC“门票”向各方提供身份验证,允许节点安全地验证其身份。Kerberos 身份验证过程采用传统的共享秘密密码术,可防止通过网络传输的数据包被读取或更改,并保护消息免受窃听和重放(或回放)攻击。
现在我们已经了解了什么是 Kerberos,接下来让我们了解 Kerberos 的用途。
免费课程:网络安全简介
学习并掌握网络安全的基础知识现在报名免费课程:网络安全简介
Kerberos 的用途是什么?
尽管 Kerberos 在数字世界中无处不在,但它在依赖可靠审计和身份验证功能的安全系统中大量使用。Kerberos 用于 Posix 身份验证、Active Directory、NFS 和 Samba。它也是 SSH、POP 和 SMTP 的替代身份验证系统。
Kerberos 身份验证协议有什么作用?
MIT 为一个名为 Athena 的项目开发了这个协议。它的名字来源于希腊神话中守护地狱的哈迪斯的三头犬。他们之所以选择这个名字,是因为 Kerberos 协议代表了以下三件事:
客户
网络资源(应用服务器)
密钥分发中心 (KDC)
通过这三个组件,Kerberos 可以在不受信任的网络上启用受信任的主机身份验证。Kerberos 确保只有授权用户才能访问网络资源。此外,它还提供 AAA 安全性:身份验证、授权和计费。
MIT 开发人员开发了 Kerberos 来安全地向他们所需的系统验证他们自己。但是 Kerberos 也授权了用户。Kerberos 的发展发生在大多数系统传输未加密密码的时候。这意味着黑客可以获得未经授权的访问。因此,Kerberos 的开发是迫在眉睫的。
它的设计师是 SP Miller、BC Neuman、JI Schiller 和 JH Saltzer。
在 Kerberos 中,KDC 授予票据。这些允许不同的主机证明他们的身份。此外,开发人员还打算进行支持授权的 Kerberos 身份验证。这意味着经过 Kerberos 身份验证的客户端也可以访问。
Kerberos 身份验证的好处
Kerberos 为任何网络安全设置带来了许多优势。它的优点包括:
有效的访问控制:Kerberos 为用户提供了一个单一的点来跟踪登录和安全策略的实施。
密钥票证的有限生命周期:每个 Kerberos 票证都有一个时间戳、生命周期数据和由管理员控制的身份验证持续时间。
相互认证:业务系统和用户可以相互认证。
可重用身份验证:Kerberos 用户身份验证是可重用和持久的,要求每个用户仅通过系统验证一次。只要门票有效,用户就不必为了身份验证而不断输入个人信息。
强大而多样的安全措施:Kerberos 安全认证协议采用密码学、多重密钥和第三方授权,创建强大、安全的防御。密码不会通过网络发送,所有密钥都经过加密。
作为了解什么是 Kerberos 的学习流程的一部分,让我们检查一下 Kerberos 协议流程。
Kerberos 对象概念和术语
Kerberos 的大多数目标都与密码管理有关。它确保密码不会通过网络传输。它们不会在客户端系统上;系统会在使用后立即丢弃它们。存储时密码不应采用纯文本形式。并且每个会话只能使用一个密码。
此外,所有身份验证信息都将位于中央服务器中。这意味着
管理员可以限制来自中央服务器的任何客户端的访问。
一个用户密码可以访问所有服务。
保护用户信息变得不那么复杂,因为您只需保护一台服务器。
在 Kerberos 中,所有实体都必须根据提示相互验证。
以下实体使用 Kerberos 协议:
Kerberos Principals:它们代表分配给票证的唯一 ID。它与大多数用户的用户 ID 相同。Kerberos 使用以下信息标识主体:
对于用户:是用户名;对于主机:主机这个词。对于服务,委托人是服务的名称。
指定主机名的可选标识符
Kerberos 服务器在其中运行的 Kerberos 领域的名称。
Kerberos 应用程序服务器:它们提供对客户端所需资源的访问。
Kerberos KDC:该实体提供对资源的访问,例如终端仿真和远程计算。
Kerberos 数据库:这个数据库有每个主体的记录。它是 Kerberos 的集中存储库,包含客户端及其访问权限的标识。
Kerberos 身份验证服务:此服务为客户端授予票证授予票证 (TGT)。
Kerberos 票证授予服务:此服务根据 TGT 对客户端进行身份验证。
身份验证后,用户将获得身份验证票证。客户端可以使用认证票证获取访问应用服务的票证。
什么是 Kerberos:协议流概述
下面更详细地介绍了 Kerberos 身份验证的全部内容。我们还将通过将其分解为核心组件来了解它的工作原理。
以下是典型 Kerberos 工作流程中涉及的主要实体:
客户端:客户端代表用户并为服务请求发起通信
服务器:服务器托管用户要访问的服务
身份验证服务器 (AS):AS 执行所需的客户端身份验证。如果身份验证成功,AS 会向客户端颁发一张名为 TGT(Ticket Granting Ticket)的票证。此票证向其他服务器保证客户端已通过身份验证
密钥分发中心 (KDC):在 Kerberos 环境中,身份验证服务器在逻辑上分为三个部分:数据库 (db)、身份验证服务器 (AS) 和票证授予服务器 (TGS)。这三个部分依次存在于称为密钥分发中心的单个服务器中
Ticket Granting Server (TGS):TGS是一个应用服务器,将服务票作为服务发行
学习最抢手的技能!
CompTIA Security+ 601 考试培训探索计划学习最抢手的技能!
现在让我们分解协议流程。
首先,Kerberos 流程涉及三个关键密钥。客户端/用户、TGS 和与 AS 共享的服务器都有唯一的密钥。
客户端/用户:从用户密码派生的哈希值
TGS 密钥:用于确定 TGS 的密码哈希
服务器密钥:用于确定提供服务的服务器的密码哈希。
协议流程包括以下步骤:
第 1 步:初始客户端身份验证请求。用户向身份验证服务器 (AS) 请求票证授予票证 (TGT)。此请求包括客户端 ID。
第 2 步:KDC 验证客户端的凭据。AS 检查数据库中的客户端和 TGS 的可用性。如果 AS 找到这两个值,它会使用用户的密码哈希生成一个客户端/用户密钥。
然后 AS 计算 TGS 密钥并创建一个由客户端/用户密钥加密的会话密钥 (SK1)。然后 AS 生成包含客户端 ID、客户端网络地址、时间戳、生命周期和 SK1 的 TGT。然后 TGS 密钥加密票证。
第三步:客户端解密消息。客户端使用客户端/用户密钥解密消息并提取 SK1 和 TGT,生成验证客户端 TGS 的身份验证器。
第四步:客户端使用TGT请求访问。客户端通过将提取的 TGT 和创建的验证器发送到 TGS 来向提供服务的服务器请求票证。
第 5 步:KDC 为文件服务器创建一个票证。然后 TGS 使用 TGS 密钥解密从客户端收到的 TGT 并提取 SK1。TGS 解密身份验证器并检查它是否与客户端 ID 和客户端网络地址相匹配。TGS 还使用提取的时间戳来确保 TGT 没有过期。
向经验丰富的行业导师学习!
CISSP认证培训课程探索计划向经验丰富的行业导师学习!
如果该过程成功执行所有检查,则 KDC 会生成一个在客户端和目标服务器之间共享的服务会话密钥 (SK2)。
最后,KDC 创建一个包含客户端 ID、客户端网络地址、时间戳和 SK2 的服务票证。然后使用从数据库获得的服务器密钥对该票证进行加密。客户端收到包含服务票证和 SK2 的消息,所有消息均使用 SK1 加密。
第六步:客户端使用文件票据进行认证。客户端使用 SK1 解密消息并提取 SK2。此过程生成一个包含客户端网络地址、客户端 ID 和时间戳的新身份验证器,使用 SK2 加密,并将它和服务票证发送到目标服务器。
第七步:目标服务器接收解密和鉴权。目标服务器使用服务器的密钥解密服务票据并提取 SK2。服务器使用 SK2 解密身份验证器,执行检查以确保来自身份验证器的客户端 ID 和客户端网络地址与服务票证相匹配。服务器还检查服务票证是否过期。
一旦满足检查条件,目标服务器就会向客户端发送一条消息,验证客户端和服务器是否已相互验证。用户现在可以参与安全会话。
在了解了 Kerberos 是什么之后,接下来让我们研究一下 Kerberos 是否绝对可靠的主题。什么是 Kerberos?Kerberos 是如何工作的以及 Kerberos 身份验证的解释
通过简单学习
最后更新于2022 年 12 月 21 日16190380
什么是 Kerberos,它是如何工作的,它的用途是什么?
目录
什么是 Kerberos?Kerberos 如何工作?Kerberos 的用途是什么?Kerberos 身份验证协议有什么作用?Kerberos 身份验证的好处Kerberos 对象概念和术语查看更多
网络犯罪是当今生活中一个不幸的事实,无论我们谈论的是个人消费者还是整个商业世界。没有公司或组织是安全的,问题不会很快好转。专家预测,到 2025 年,网络犯罪给世界造成的损失将达到 25 万亿美元。似乎这还不够糟糕,《福布斯》预测网络犯罪分子将对移动设备造成越来越大的风险,而移动设备是当今许多人使用的设备。
这些预测以及许多其他预测都指向了严酷的现实,即网络犯罪将继续存在,而且问题只会变得更糟。因此,数字世界渴望找到并采用新的策略来加强网络安全。
今天,我们正在研究 Kerberos 身份验证协议。让我们拉开帷幕,熟悉一下这个有效的网络协议。
让我们从了解什么是 Kerberos 及其工作原理开始。
在 6 个月内从初学者到专家!
网络安全高级执行计划探索计划在 6 个月内从初学者到专家!
什么是 Kerberos?Kerberos 如何工作?
Kerberos 是一种计算机网络安全协议,可在不受信任的网络(如 Internet)中对两个或多个受信任主机之间的服务请求进行身份验证。它使用密钥密码术和受信任的第三方来验证客户端-服务器应用程序和验证用户的身份。
Kerberos 最初由麻省理工学院 (MIT) 在 80 年代后期为 Project Athena 开发,现在是 Microsoft Windows 使用的默认授权技术。Kerberos 实现也适用于其他操作系统,例如 Apple OS、FreeBSD、UNIX 和Linux。
Microsoft 在 Windows 2000 中推出了它的 Kerberos 版本,它已成为网站和不同平台上单点登录实施的首选协议。Kerberos 联盟将Kerberos 作为一个开源项目进行维护。
该协议的名称来源于希腊神话中传说中的三头犬 Kerberos(也称为 Cerberus),它是冥界入口的犬类守护者。Kerberos 有一条蛇尾巴,脾气特别坏,尽管有一个明显的例外,但它是一个非常有用的守护者。
但在协议的情况下,Kerberos 的三个负责人分别代表客户端、服务器和密钥分发中心 (KDC)。后者作为可信的第三方认证服务。
使用 Kerberos 的用户、机器和服务仅依赖于 KDC,它作为一个提供两个功能的进程工作:身份验证和票证授予。KDC“门票”向各方提供身份验证,允许节点安全地验证其身份。Kerberos 身份验证过程采用传统的共享秘密密码术,可防止通过网络传输的数据包被读取或更改,并保护消息免受窃听和重放(或回放)攻击。
现在我们已经了解了什么是 Kerberos,接下来让我们了解 Kerberos 的用途。
免费课程:网络安全简介
学习并掌握网络安全的基础知识现在报名免费课程:网络安全简介
Kerberos 的用途是什么?
尽管 Kerberos 在数字世界中无处不在,但它在依赖可靠审计和身份验证功能的安全系统中大量使用。Kerberos 用于 Posix 身份验证、Active Directory、NFS 和 Samba。它也是 SSH、POP 和 SMTP 的替代身份验证系统。
Kerberos 身份验证协议有什么作用?
MIT 为一个名为 Athena 的项目开发了这个协议。它的名字来源于希腊神话中守护地狱的哈迪斯的三头犬。他们之所以选择这个名字,是因为 Kerberos 协议代表了以下三件事:
客户
网络资源(应用服务器)
密钥分发中心 (KDC)
通过这三个组件,Kerberos 可以在不受信任的网络上启用受信任的主机身份验证。Kerberos 确保只有授权用户才能访问网络资源。此外,它还提供 AAA 安全性:身份验证、授权和计费。
MIT 开发人员开发了 Kerberos 来安全地向他们所需的系统验证他们自己。但是 Kerberos 也授权了用户。Kerberos 的发展发生在大多数系统传输未加密密码的时候。这意味着黑客可以获得未经授权的访问。因此,Kerberos 的开发是迫在眉睫的。
它的设计师是 SP Miller、BC Neuman、JI Schiller 和 JH Saltzer。
在 Kerberos 中,KDC 授予票据。这些允许不同的主机证明他们的身份。此外,开发人员还打算进行支持授权的 Kerberos 身份验证。这意味着经过 Kerberos 身份验证的客户端也可以访问。
Kerberos 身份验证的好处
Kerberos 为任何网络安全设置带来了许多优势。它的优点包括:
有效的访问控制:Kerberos 为用户提供了一个单一的点来跟踪登录和安全策略的实施。
密钥票证的有限生命周期:每个 Kerberos 票证都有一个时间戳、生命周期数据和由管理员控制的身份验证持续时间。
相互认证:业务系统和用户可以相互认证。
可重用身份验证:Kerberos 用户身份验证是可重用和持久的,要求每个用户仅通过系统验证一次。只要门票有效,用户就不必为了身份验证而不断输入个人信息。
强大而多样的安全措施:Kerberos 安全认证协议采用密码学、多重密钥和第三方授权,创建强大、安全的防御。密码不会通过网络发送,所有密钥都经过加密。
作为了解什么是 Kerberos 的学习流程的一部分,让我们检查一下 Kerberos 协议流程。
Kerberos 对象概念和术语
Kerberos 的大多数目标都与密码管理有关。它确保密码不会通过网络传输。它们不会在客户端系统上;系统会在使用后立即丢弃它们。存储时密码不应采用纯文本形式。并且每个会话只能使用一个密码。
此外,所有身份验证信息都将位于中央服务器中。这意味着
管理员可以限制来自中央服务器的任何客户端的访问。
一个用户密码可以访问所有服务。
保护用户信息变得不那么复杂,因为您只需保护一台服务器。
在 Kerberos 中,所有实体都必须根据提示相互验证。
以下实体使用 Kerberos 协议:
Kerberos Principals:它们代表分配给票证的唯一 ID。它与大多数用户的用户 ID 相同。Kerberos 使用以下信息标识主体:
对于用户:是用户名;对于主机:主机这个词。对于服务,委托人是服务的名称。
指定主机名的可选标识符
Kerberos 服务器在其中运行的 Kerberos 领域的名称。
Kerberos 应用程序服务器:它们提供对客户端所需资源的访问。
Kerberos KDC:该实体提供对资源的访问,例如终端仿真和远程计算。
Kerberos 数据库:这个数据库有每个主体的记录。它是 Kerberos 的集中存储库,包含客户端及其访问权限的标识。
Kerberos 身份验证服务:此服务为客户端授予票证授予票证 (TGT)。
Kerberos 票证授予服务:此服务根据 TGT 对客户端进行身份验证。
身份验证后,用户将获得身份验证票证。客户端可以使用认证票证获取访问应用服务的票证。
什么是 Kerberos:协议流概述
下面更详细地介绍了 Kerberos 身份验证的全部内容。我们还将通过将其分解为核心组件来了解它的工作原理。
以下是典型 Kerberos 工作流程中涉及的主要实体:
客户端:客户端代表用户并为服务请求发起通信
服务器:服务器托管用户要访问的服务
身份验证服务器 (AS):AS 执行所需的客户端身份验证。如果身份验证成功,AS 会向客户端颁发一张名为 TGT(Ticket Granting Ticket)的票证。此票证向其他服务器保证客户端已通过身份验证
密钥分发中心 (KDC):在 Kerberos 环境中,身份验证服务器在逻辑上分为三个部分:数据库 (db)、身份验证服务器 (AS) 和票证授予服务器 (TGS)。这三个部分依次存在于称为密钥分发中心的单个服务器中
Ticket Granting Server (TGS):TGS是一个应用服务器,将服务票作为服务发行
学习最抢手的技能!
CompTIA Security+ 601 考试培训探索计划学习最抢手的技能!
现在让我们分解协议流程。
首先,Kerberos 流程涉及三个关键密钥。客户端/用户、TGS 和与 AS 共享的服务器都有唯一的密钥。
客户端/用户:从用户密码派生的哈希值
TGS 密钥:用于确定 TGS 的密码哈希
服务器密钥:用于确定提供服务的服务器的密码哈希。
协议流程包括以下步骤:
第 1 步:初始客户端身份验证请求。用户向身份验证服务器 (AS) 请求票证授予票证 (TGT)。此请求包括客户端 ID。
第 2 步:KDC 验证客户端的凭据。AS 检查数据库中的客户端和 TGS 的可用性。如果 AS 找到这两个值,它会使用用户的密码哈希生成一个客户端/用户密钥。
然后 AS 计算 TGS 密钥并创建一个由客户端/用户密钥加密的会话密钥 (SK1)。然后 AS 生成包含客户端 ID、客户端网络地址、时间戳、生命周期和 SK1 的 TGT。然后 TGS 密钥加密票证。
第三步:客户端解密消息。客户端使用客户端/用户密钥解密消息并提取 SK1 和 TGT,生成验证客户端 TGS 的身份验证器。
第四步:客户端使用TGT请求访问。客户端通过将提取的 TGT 和创建的验证器发送到 TGS 来向提供服务的服务器请求票证。
第 5 步:KDC 为文件服务器创建一个票证。然后 TGS 使用 TGS 密钥解密从客户端收到的 TGT 并提取 SK1。TGS 解密身份验证器并检查它是否与客户端 ID 和客户端网络地址相匹配。TGS 还使用提取的时间戳来确保 TGT 没有过期。
向经验丰富的行业导师学习!
CISSP认证培训课程探索计划向经验丰富的行业导师学习!
如果该过程成功执行所有检查,则 KDC 会生成一个在客户端和目标服务器之间共享的服务会话密钥 (SK2)。
最后,KDC 创建一个包含客户端 ID、客户端网络地址、时间戳和 SK2 的服务票证。然后使用从数据库获得的服务器密钥对该票证进行加密。客户端收到包含服务票证和 SK2 的消息,所有消息均使用 SK1 加密。
第六步:客户端使用文件票据进行认证。客户端使用 SK1 解密消息并提取 SK2。此过程生成一个包含客户端网络地址、客户端 ID 和时间戳的新身份验证器,使用 SK2 加密,并将它和服务票证发送到目标服务器。
第七步:目标服务器接收解密和鉴权。目标服务器使用服务器的密钥解密服务票据并提取 SK2。服务器使用 SK2 解密身份验证器,执行检查以确保来自身份验证器的客户端 ID 和客户端网络地址与服务票证相匹配。服务器还检查服务票证是否过期。
一旦满足检查条件,目标服务器就会向客户端发送一条消息,验证客户端和服务器是否已相互验证。用户现在可以参与安全会话。
在了解了 Kerberos 是什么之后,接下来让我们研究一下 Kerberos 是否绝对可靠的主题。
免费课程:CISSP
免费信息安全介绍开始学习免费课程:CISSP
Kerberos 身份验证协议如何工作?
您可以在下面看到 Kerberos 身份验证协议如何工作的粗略版本:
身份验证服务器请求:客户端向 KDC 请求身份验证。此身份验证请求将采用纯文本形式。
身份验证服务器响应:如果客户端存在于数据库中,则 KDC 发送 TGT 和会话密钥。如果客户端不在数据库中,则身份验证失败。
服务票证请求:客户端请求服务票证以及 KDC 先前发送的 TGT。
服务票据响应:KDC 发送使用会话密钥加密的票据。客户端可以使用 KDC 先前发送的会话密钥来解密服务票证。
应用服务器请求:客户端使用服务票证向应用服务器请求访问。吨应用服务器响应:应用服务器对客户端进行身份验证。它发送一张票证,授予对该特定服务的访问权。
服务票据有特定的到期时间。您可以使用同一张会话票证访问服务,直到它过期为止。Kerberos 票证的默认生命周期为 600 分钟。
Kerberos 与其他网络身份验证协议
除了 Kerberos 之外,还有其他身份验证协议;你可以在下面阅读它们。
Kerberos 与 Microsoft 新技术 LAN Manager (NTLM)
Microsoft 的 NTLM 是 Windows 以前使用的技术。从 Windows 2000 开始,所有版本都使用 Kerberos。此外,NTLM 使用质询-响应身份验证。在这里,服务器提出问题,客户端必须回答。
Kerberos 与轻量级目录访问协议 (LDAP)
使用 LDAP,您可以维护有关用户的信息。此外,您可以在同一个网络上找到 Kerberos 和 LDAP:LDAP 提供授权服务,Kerberos 进行身份验证。
Kerberos 与远程身份验证拨入用户服务 (RADIUS)
它的目标是允许拨入用户远程访问 Internet 服务提供商。但是,网络服务将它与 Kerberos 一起用于记帐和身份验证。
Kerberos 安全吗?
现在,您知道“什么是 Kerberos?”这个问题的答案了。您可能想知道它是否安全。
全世界的安全从业者都认为 Kerberos 是安全的。它具有强大的加密功能来保护数据。然而,安全研究人员几乎没有找到击败 Kerberos 的方法。
密钥传递攻击:攻击者使用客户的凭据冒充客户。
传递票证攻击:攻击者在 KDC 发送会话票证时使用票证。
金票攻击:攻击者使用 Windows 域控制器创建客户端凭据。
Kerberos 会被黑客入侵吗?
没有任何安全措施是 100% 牢不可破的,Kerberos 也不例外。由于它已经存在了很长时间,多年来黑客一直有机会找到绕过它的方法,通常是伪造票证、反复尝试猜测密码(暴力/凭据填充)以及使用恶意软件来降低加密级别。
尽管如此,Keberos 仍然是当今可用的最佳安全访问协议。该协议足够灵活,可以采用更强大的加密算法来帮助对抗新威胁,如果用户采用良好的密码选择策略,您应该没问题!
Kerberos 过时了吗?
长寿并不自动意味着过时。尽管在某些情况下网络罪犯已经突破了 Kerberos(而且我们已经确定没有任何安全系统是 100% 坚不可摧的),但它仍在大量使用并享有良好的声誉。
什么是 Kerberos?Kerberos 是如何工作的以及 Kerberos 身份验证的解释
通过简单学习
最后更新于2022 年 12 月 21 日16190380
什么是 Kerberos,它是如何工作的,它的用途是什么?
目录
什么是 Kerberos?Kerberos 如何工作?Kerberos 的用途是什么?Kerberos 身份验证协议有什么作用?Kerberos 身份验证的好处Kerberos 对象概念和术语查看更多。
网络犯罪是当今生活中一个不幸的事实,无论我们谈论的是个人消费者还是整个商业世界。没有公司或组织是安全的,问题不会很快好转。专家预测,到 2025 年,网络犯罪给世界造成的损失将达到 25 万亿美元。似乎这还不够糟糕,《福布斯》预测网络犯罪分子将对移动设备造成越来越大的风险,而移动设备是当今许多人使用的设备。
这些预测以及许多其他预测都指向了严酷的现实,即网络犯罪将继续存在,而且问题只会变得更糟。因此,数字世界渴望找到并采用新的策略来加强网络安全。
今天,我们正在研究 Kerberos 身份验证协议。让我们拉开帷幕,熟悉一下这个有效的网络协议。
让我们从了解什么是 Kerberos 及其工作原理开始。
在 6 个月内从初学者到专家!
网络安全高级执行计划探索计划在 6 个月内从初学者到专家!
什么是 Kerberos?Kerberos 如何工作?
Kerberos 是一种计算机网络安全协议,可在不受信任的网络(如 Internet)中对两个或多个受信任主机之间的服务请求进行身份验证。它使用密钥密码术和受信任的第三方来验证客户端-服务器应用程序和验证用户的身份。
Kerberos 最初由麻省理工学院 (MIT) 在 80 年代后期为 Project Athena 开发,现在是 Microsoft Windows 使用的默认授权技术。Kerberos 实现也适用于其他操作系统,例如 Apple OS、FreeBSD、UNIX 和Linux。
Microsoft 在 Windows 2000 中推出了它的 Kerberos 版本,它已成为网站和不同平台上单点登录实施的首选协议。Kerberos 联盟将Kerberos 作为一个开源项目进行维护。
该协议的名称来源于希腊神话中传说中的三头犬 Kerberos(也称为 Cerberus),它是冥界入口的犬类守护者。Kerberos 有一条蛇尾巴,脾气特别坏,尽管有一个明显的例外,但它是一个非常有用的守护者。
但在协议的情况下,Kerberos 的三个负责人分别代表客户端、服务器和密钥分发中心 (KDC)。后者作为可信的第三方认证服务。
使用 Kerberos 的用户、机器和服务仅依赖于 KDC,它作为一个提供两个功能的进程工作:身份验证和票证授予。KDC“门票”向各方提供身份验证,允许节点安全地验证其身份。Kerberos 身份验证过程采用传统的共享秘密密码术,可防止通过网络传输的数据包被读取或更改,并保护消息免受窃听和重放(或回放)攻击。
现在我们已经了解了什么是 Kerberos,接下来让我们了解 Kerberos 的用途。
免费课程:网络安全简介
学习并掌握网络安全的基础知识现在报名免费课程:网络安全简介
Kerberos 的用途是什么?
尽管 Kerberos 在数字世界中无处不在,但它在依赖可靠审计和身份验证功能的安全系统中大量使用。Kerberos 用于 Posix 身份验证、Active Directory、NFS 和 Samba。它也是 SSH、POP 和 SMTP 的替代身份验证系统。
Kerberos 身份验证协议有什么作用?
MIT 为一个名为 Athena 的项目开发了这个协议。它的名字来源于希腊神话中守护地狱的哈迪斯的三头犬。
他们之所以选择这个名字,是因为 Kerberos 协议代表了以下三件事:
客户
网络资源(应用服务器)
密钥分发中心 (KDC)
通过这三个组件,Kerberos 可以在不受信任的网络上启用受信任的主机身份验证。Kerberos 确保只有授权用户才能访问网络资源。此外,它还提供 AAA 安全性:身份验证、授权和计费。
MIT 开发人员开发了 Kerberos 来安全地向他们所需的系统验证他们自己。但是 Kerberos 也授权了用户。Kerberos 的发展发生在大多数系统传输未加密密码的时候。这意味着黑客可以获得未经授权的访问。因此,Kerberos 的开发是迫在眉睫的。
它的设计师是 SP Miller、BC Neuman、JI Schiller 和 JH Saltzer。
在 Kerberos 中,KDC 授予票据。这些允许不同的主机证明他们的身份。此外,开发人员还打算进行支持授权的 Kerberos 身份验证。这意味着经过 Kerberos 身份验证的客户端也可以访问。
Kerberos 身份验证的好处
Kerberos 为任何网络安全设置带来了许多优势。它的优点包括:
有效的访问控制:Kerberos 为用户提供了一个单一的点来跟踪登录和安全策略的实施。
密钥票证的有限生命周期:每个 Kerberos 票证都有一个时间戳、生命周期数据和由管理员控制的身份验证持续时间。
相互认证:业务系统和用户可以相互认证。可重用身份验证:Kerberos 用户身份验证是可重用和持久的,要求每个用户仅通过系统验证一次。只要门票有效,用户就不必为了身份验证而不断输入个人信息。
强大而多样的安全措施:Kerberos 安全认证协议采用密码学、多重密钥和第三方授权,创建强大、安全的防御。密码不会通过网络发送,所有密钥都经过加密。
作为了解什么是 Kerberos 的学习流程的一部分,让我们检查一下 Kerberos 协议流程。
Kerberos 对象概念和术语
Kerberos 的大多数目标都与密码管理有关。它确保密码不会通过网络传输。它们不会在客户端系统上;系统会在使用后立即丢弃它们。存储时密码不应采用纯文本形式。并且每个会话只能使用一个密码。
此外,所有身份验证信息都将位于中央服务器中。这意味着管理员可以限制来自中央服务器的任何客户端的访问。 一个用户密码可以访问所有服务。 保护用户信息变得不那么复杂,因为您只需保护一台服务器。 在 Kerberos 中,所有实体都必须根据提示相互验证。
以下实体使用 Kerberos 协议:
Kerberos Principals:它们代表分配给票证的唯一 ID。它与大多数用户的用户 ID 相同。Kerberos 使用以下信息标识主体:
对于用户:是用户名;对于主机:主机这个词。对于服务,委托人是服务的名称。
指定主机名的可选标识符
Kerberos 服务器在其中运行的 Kerberos 领域的名称。
Kerberos 应用程序服务器:它们提供对客户端所需资源的访问。
Kerberos KDC:该实体提供对资源的访问,例如终端仿真和远程计算。
Kerberos 数据库:这个数据库有每个主体的记录。
它是 Kerberos 的集中存储库,包含客户端及其访问权限的标识。
Kerberos 身份验证服务:此服务为客户端授予票证授予票证 (TGT)。
Kerberos 票证授予服务:此服务根据 TGT 对客户端进行身份验证。
身份验证后,用户将获得身份验证票证。客户端可以使用认证票证获取访问应用服务的票证。
什么是 Kerberos:协议流概述
下面更详细地介绍了 Kerberos 身份验证的全部内容。我们还将通过将其分解为核心组件来了解它的工作原理。
以下是典型 Kerberos 工作流程中涉及的主要实体:
客户端:客户端代表用户并为服务请求发起通信
服务器:服务器托管用户要访问的服务
身份验证服务器 (AS):AS 执行所需的客户端身份验证。如果身份验证成功,AS 会向客户端颁发一张名为 TGT(Ticket Granting Ticket)的票证。此票证向其他服务器保证客户端已通过身份验证密钥分发中心 (KDC):在 Kerberos 环境中,身份验证服务器在逻辑上分为三个部分:数据库 (db)、身份验证服务器 (AS) 和票证授予服务器 (TGS)。这三个部分依次存在于称为密钥分发中心的单个服务器中Ticket Granting Server (TGS):TGS是一个应用服务器,将服务票作为服务发行学习最抢手的技能!CompTIA Security+ 601 考试培训探索计划学习最抢手的技能!
现在让我们分解协议流程。
首先,Kerberos 流程涉及三个关键密钥。客户端/用户、TGS 和与 AS 共享的服务器都有唯一的密钥。
客户端/用户:从用户密码派生的哈希值
TGS 密钥:用于确定 TGS 的密码哈希
服务器密钥:用于确定提供服务的服务器的密码哈希。
协议流程包括以下步骤:
第 1 步:初始客户端身份验证请求。用户向身份验证服务器 (AS) 请求票证授予票证 (TGT)。此请求包括客户端 ID。
第 2 步:KDC 验证客户端的凭据。AS 检查数据库中的客户端和 TGS 的可用性。如果 AS 找到这两个值,它会使用用户的密码哈希生成一个客户端/用户密钥。
然后 AS 计算 TGS 密钥并创建一个由客户端/用户密钥加密的会话密钥 (SK1)。然后 AS 生成包含客户端 ID、客户端网络地址、时间戳、生命周期和 SK1 的 TGT。然后 TGS 密钥加密票证。
第三步:客户端解密消息。客户端使用客户端/用户密钥解密消息并提取 SK1 和 TGT,生成验证客户端 TGS 的身份验证器。
第四步:客户端使用TGT请求访问。客户端通过将提取的 TGT 和创建的验证器发送到 TGS 来向提供服务的服务器请求票证。
第 5 步:KDC 为文件服务器创建一个票证。然后 TGS 使用 TGS 密钥解密从客户端收到的 TGT 并提取 SK1。TGS 解密身份验证器并检查它是否与客户端 ID 和客户端网络地址相匹配。TGS 还使用提取的时间戳来确保 TGT 没有过期。
向经验丰富的行业导师学习!
CISSP认证培训课程探索计划向经验丰富的行业导师学习!
如果该过程成功执行所有检查,则 KDC 会生成一个在客户端和目标服务器之间共享的服务会话密钥 (SK2)。
最后,KDC 创建一个包含客户端 ID、客户端网络地址、时间戳和 SK2 的服务票证。然后使用从数据库获得的服务器密钥对该票证进行加密。客户端收到包含服务票证和 SK2 的消息,所有消息均使用 SK1 加密。
第六步:客户端使用文件票据进行认证。客户端使用 SK1 解密消息并提取 SK2。此过程生成一个包含客户端网络地址、客户端 ID 和时间戳的新身份验证器,使用 SK2 加密,并将它和服务票证发送到目标服务器。
第七步:目标服务器接收解密和鉴权。目标服务器使用服务器的密钥解密服务票据并提取 SK2。服务器使用 SK2 解密身份验证器,执行检查以确保来自身份验证器的客户端 ID 和客户端网络地址与服务票证相匹配。服务器还检查服务票证是否过期。
一旦满足检查条件,目标服务器就会向客户端发送一条消息,验证客户端和服务器是否已相互验证。用户现在可以参与安全会话。
在了解了 Kerberos 是什么之后,接下来让我们研究一下 Kerberos 是否绝对可靠的主题。
免费课程:CISSP
免费信息安全介绍开始学习免费课程:CISSP
Kerberos 身份验证协议如何工作?
您可以在下面看到 Kerberos 身份验证协议如何工作的粗略版本:
身份验证服务器请求:客户端向 KDC 请求身份验证。此身份验证请求将采用纯文本形式。
身份验证服务器响应:如果客户端存在于数据库中,则 KDC 发送 TGT 和会话密钥。如果客户端不在数据库中,则身份验证失败。
服务票证请求:客户端请求服务票证以及 KDC 先前发送的 TGT。
服务票据响应:KDC 发送使用会话密钥加密的票据。客户端可以使用 KDC 先前发送的会话密钥来解密服务票证。
应用服务器请求:客户端使用服务票证向应用服务器请求访问。
应用服务器响应:应用服务器对客户端进行身份验证。它发送一张票证,授予对该特定服务的访问权。
服务票据有特定的到期时间。您可以使用同一张会话票证访问服务,直到它过期为止。Kerberos 票证的默认生命周期为 600 分钟。
Kerberos 与其他网络身份验证协议
除了 Kerberos 之外,还有其他身份验证协议;你可以在下面阅读它们。
Kerberos 与 Microsoft 新技术 LAN Manager (NTLM)
Microsoft 的 NTLM 是 Windows 以前使用的技术。从 Windows 2000 开始,所有版本都使用 Kerberos。此外,NTLM 使用质询-响应身份验证。在这里,服务器提出问题,客户端必须回答。
Kerberos 与轻量级目录访问协议 (LDAP)
使用 LDAP,您可以维护有关用户的信息。此外,您可以在同一个网络上找到 Kerberos 和 LDAP:LDAP 提供授权服务,Kerberos 进行身份验证。
Kerberos 与远程身份验证拨入用户服务 (RADIUS)
它的目标是允许拨入用户远程访问 Internet 服务提供商。但是,网络服务将它与 Kerberos 一起用于记帐和身份验证。
Kerberos 安全吗?
现在,您知道“什么是 Kerberos?”这个问题的答案了。您可能想知道它是否安全。
全世界的安全从业者都认为 Kerberos 是安全的。它具有强大的加密功能来保护数据。然而,安全研究人员几乎没有找到击败 Kerberos 的方法。
密钥传递攻击:攻击者使用客户的凭据冒充客户。
传递票证攻击:攻击者在 KDC 发送会话票证时使用票证。
金票攻击:攻击者使用 Windows 域控制器创建客户端凭据。
Kerberos 会被黑客入侵吗?
没有任何安全措施是 100% 牢不可破的,Kerberos 也不例外。由于它已经存在了很长时间,多年来黑客一直有机会找到绕过它的方法,通常是伪造票证、反复尝试猜测密码(暴力/凭据填充)以及使用恶意软件来降低加密级别。
尽管如此,Keberos 仍然是当今可用的最佳安全访问协议。该协议足够灵活,可以采用更强大的加密算法来帮助对抗新威胁,如果用户采用良好的密码选择策略,您应该没问题!
Kerberos 过时了吗?
长寿并不自动意味着过时。尽管在某些情况下网络罪犯已经突破了 Kerberos(而且我们已经确定没有任何安全系统是 100% 坚不可摧的),但它仍在大量使用并享有良好的声誉。
希望加速您的网络安全事业?尝试回答这些CISSP 考试准备练习测试并了解您对这些概念的理解。您想了解有关网络安全的更多信息吗?
网络安全领域是一个广阔而多样的领域,涵盖许多不同的主题、科目和程序。如果您正在寻找提高网络安全知识的有效方法,那么您应该考虑以下一些方法。
对经过认证的道德黑客帮助测试系统和发现漏洞的需求稳定。查看 Simplilearn 的道德黑客课程课程,开始白帽黑客的职业道路。或者,您可能想要了解更多关于相关 IS 主题的知识,例如CompTIA Security+ 或COBIT 2019。
也许您想探索不同的信息安全培训课程,例如认证信息安全经理、认证云安全专家或认证信息系统审计员。
最后,您可以申请享有盛誉的网络安全专家硕士课程,该课程在一个便捷的计划中涵盖了上述许多主题。Indeed报告称,美国网络安全专家的平均年薪为 108,389 美元,而印度同样职位的平均年薪为 963,367 卢比。
你想要网络安全职业吗?
如果您正在寻找一份具有挑战性、回报丰厚并提供出色工作保障的职业,那么信息安全领域的职位正适合您!Simplilearn 的认证信息系统安全专家 (CISSP) 认证培训课程通过发展您在使用全球认可的信息安全标准定义IT 安全架构方面的专业知识,帮助您实现梦想。综合课程教授您行业中常用的技术,并为您准备 (ISC)2 举办的 CISSP 认证考试。
您将获得 67 小时的深度学习、五份模拟试卷以帮助您为CISSP 认证做好准备、参加考试所需的 30 个 CPE 以及考试券。如果您有任何疑问,请随时在下面的评论中发表。我们的团队会尽快回复您。不要拖延!从今天开始,让 Simplilearn 帮助您实现网络安全目标! 关于作者,Simplilearn 是全球领先的数字营销、云计算、项目管理、数据科学、IT、软件开发和许多其他新兴技术在线培训提供商之一。