gpt4 book ai didi

authentication - 为什么不能 NTLM 双跳?

转载 作者:行者123 更新时间:2023-12-04 04:34:49 25 4
gpt4 key购买 nike

我的理解是 NTLM 是一个质询响应协议(protocol),而 Kerberos 传递一张票。我遇到的大多数信息只是说这就是 Kerberos 可以双跳但 NTLM 不能的原因,而没有解释为什么 NTLM 不能只转发响应和挑战。

即,为什么这种情况不可能:

客户端向前端服务器进行身份验证,然后前端服务器需要代表客户端向后端服务器进行身份验证。前端然后尝试认证并发送用户名,后端然后向前端发出质询,前端将此质询转发给客户端,客户端发出响应,前端再转发此响应到后端。

我知道它不是这样工作的,但我对细节很好奇。为什么服务器不能转发允许双跳的响应和挑战?

谢谢。

最佳答案

不幸的是,当客户端使用 NTLM 进行身份验证时,前端服务器无法作为客户端向另一个(下一跳)服务器进行身份验证。这是因为 NTLM 身份验证的工作原理:服务器向客户端发送一个质询,客户端将其与其密码哈希相结合,根据此组合计算另一个哈希并将其发送回服务器。验证客户端返回值是否正确从而对其进行身份验证的唯一方法是在服务器端执行相同的计算,这需要访问客户端的真实密码(嗯,它的哈希值,但对于我们的目的而言,它是相同的事物)。出于安全目的,域 Controller 不会分发此密码,这意味着服务服务器必须将客户端的身份验证哈希传递给 DC 进行验证。 DC 然后让前端服务器知道客户端的身份验证一切正常。

请看这篇博文:
https://blogs.msdn.microsoft.com/besidethepoint/2010/05/08/double-hop-authentication-why-ntlm-fails-and-kerberos-works/

关于authentication - 为什么不能 NTLM 双跳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19914832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com