我正在尝试研究 NTLMv2 响应,Eric Glass 的工作。
但卡在 HMAC-MD5 部分。(使用这样的功能)
我得到了正确的 NTLM 哈希,以及 unicode 用户名和域。
(他只强调“USERDOMAIN”,没有强调用户名,所以我猜是“USER”)
unsigned char v1hash[16]; // "0xcd06ca7c7e10c99b1d33b7485a2ed808"
unsigned short udata[14];
// concated unicode USER+USERDOMAIN "0x550053004500520044004f004d00410049004e00"
unsigned char v2hash[16];
int iLen;
HMAC(EVP_md5(), v1hash, 16, udata, sizeof(udata), v2hash, &iLen);
但结果是:
v2hash(16): 23 d2 3c a4 dd 1a 20 81 35 cf 3a 42 1c e1 5a 17
这应该是“0x04b8e0ba74289cc540826bab1dee63ae”
我在这里做错了吗?