Microsoft NTLM (v2) 中的时间戳使用
timestamp use in Microsoft NTLM (v2)
我正在致力于自定义实施 NTLM 和 NTLMv2 协议以在 Lync(Skype for business)服务器上进行授权。在阅读官方规范和 http://davenport.sourceforge.net/ntlm.html 时,我有几个问题找不到答案。其中之一如下:
问题是关于 NTLMv2 响应(尤其是 blob)。它说 blob 应该包含时间戳
since January 1, 1601
。这个是来做什么的?如果服务器不知道我的本地时间,它如何确保安全。或者我应该使用服务器在类型 2 消息中提供的时间戳?
答案不完整,但我现在还没好
Or maybe I should use timestamp provided in type 2 message by server?
是的。正如我在评论 MS-NLMP
上面链接的文档中所说
If NTLM v2 authentication is used, the client SHOULD send the timestamp in the
CHALLENGE_MESSAGE.<47>
If there exists a CHALLENGE_MESSAGE.TargetInfo.AvId ==
MsvAvTimestamp
Set Time to CHALLENGE_MESSAGE.TargetInfo.Value of that AVPair
Else
Set Time to Currenttime
Endif
我正在致力于自定义实施 NTLM 和 NTLMv2 协议以在 Lync(Skype for business)服务器上进行授权。在阅读官方规范和 http://davenport.sourceforge.net/ntlm.html 时,我有几个问题找不到答案。其中之一如下:
问题是关于 NTLMv2 响应(尤其是 blob)。它说 blob 应该包含时间戳
since January 1, 1601
。这个是来做什么的?如果服务器不知道我的本地时间,它如何确保安全。或者我应该使用服务器在类型 2 消息中提供的时间戳?
答案不完整,但我现在还没好
Or maybe I should use timestamp provided in type 2 message by server?
是的。正如我在评论 MS-NLMP
上面链接的文档中所说If NTLM v2 authentication is used, the client SHOULD send the timestamp in the
CHALLENGE_MESSAGE.<47>
If there exists a CHALLENGE_MESSAGE.TargetInfo.AvId ==
MsvAvTimestamp
Set Time to CHALLENGE_MESSAGE.TargetInfo.Value of that AVPair
Else
Set Time to Currenttime
Endif