有人可以解释一下Kerberos中的时间戳如何防止重播攻击?
由于
答案 0 :(得分:2)
它不能完全阻止重放攻击,但它确保重放必须在身份验证的几分钟内完成。如果您稍后尝试重播身份验证握手,则会失败,因为服务器知道时间戳已经过时了。
答案 1 :(得分:0)
此外,重放缓存具有在最后2分钟内到达的验证器,如果它们被呈现则拒绝它们。有关详细信息,请查看http://www.kerberos.org/software/tutorial.html
中的重播缓存部分答案 2 :(得分:0)
“Kerberos身份验证通过使用两种机制来阻止重放攻击:
本地计算机上的Kerberos客户端加密验证器内的时间戳,然后将其发送到密钥分发中心(KDC)。如果KDC验证它从验证者解密的时间是在KDC上的本地时间的指定量(默认值是五分钟)内,则系统可以假定所提供的凭证是真实的。
KDC发出的所有门票都有到期时间。因此,如果故障单被泄露,则不能在指定的时间范围之外使用 - 通常足够短以使重放攻击的风险最小化。
由于这些机制,Kerberos身份验证依赖于在KDC和客户端上设置的日期和时间。如果KDC与请求票证的客户之间存在太大的时差,KDC无法确定该请求是合法还是重播。“
来源:https://technet.microsoft.com/en-us/library/cc780011%28v=ws.10%29.aspx
这就是为什么让你的时钟同步是如此重要 - 你收到的Kerberos TGT门票是一个有时间限制的优惠。优惠的时间限制从时间戳上指示的时间开始。时间错误是你犯下的最严重的罪,这就是Kerberos坚持让你的时钟同步的原因。