如果 Kerberos 时间戳具有未来性,会发生什么情况?

如果 Kerberos 时间戳具有未来性,会发生什么情况?

在 Kerberos 身份验证中,加密消息会添加时间戳,以防止重放攻击。基本上,一旦有人解密了发送给他的消息,它就会将时间戳与当前时间进行比较,如果它可以容忍消息加密时间和当前时间之间的时间差,它就会认为它是有效的。

但是如果我们在 Kerberos 票证上放置未来的时间戳,会发生什么?

如果 KDC 在 17:34 解密票证,但当前时间戳是 18:28,会发生什么情况?

如果它让我进入并验证我的票,那么有什么可以阻止我将时间戳设置为未来 100 年,从而在我发送的每张票上获得无限的时间戳?

答案1

取决于所讨论的 Kerberos 库的特定版本和配置,但通常它们都会检查时间戳是否在特定时间范围内。例如现在 +/- 5 分钟,而不是大于现在。

这并不是客户端现在发送的,而是客户端发送了一个新的请求,因此 KDC 实际上可能会返回一个错误,表明它应该调整其请求时间以匹配 KDC 时间,这已经足够好了,因为它表明客户端能够主动使用客户端凭证。

相关内容