Microsoft NTLM(v2)中的时间戳记使用

时间:2019-12-06 12:03:58

标签: c++ security ntlm ntlm-authentication ntlmv2

我正在研究NTLM和NTLMv2协议的自定义实现,以在Lync(企业版Skype)服务器上进行授权。在阅读官方规范和http://davenport.sourceforge.net/ntlm.html时,我遇到了几个无法找到答案的问题。其中之一是:

问题是关于NTLMv2响应(尤其是Blob)。它说blob应该包含时间戳记

since January 1, 1601

。这个是来做什么的?如果服务器不知道我的本地时间,如何确保安全性。还是我应该使用服务器在类型2消息中提供的时间戳?

1 个答案:

答案 0 :(得分:0)

答案不完整,但我暂时还没有改善

  

或者也许我应该使用服务器在类型2消息中提供的时间戳?

是的。如上面我的评论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