0
点赞
收藏
分享

微信扫一扫

实现PROXY穿越(13):NTLM type2 Message


  Type2 message是proxy收到client含有type1 message请求时候返回的消息,经过base64扰码后,放置在Proxy-Authentication中。下面来描述一下它的结构。

 

 0-7字节: char protocol[8]

表明属于NTLMSSP协议,依次位'N', 'T', 'L', 'M', 'S', 'S', 'P', '/0'

 8-11字节 unsigned int type

为0x02000000(little-endian的方式),即为2,表示是type2 message

 12-19字节,表明target name的信息

12-13:target name的长度

14-15:target name分配得长度

16-19:target name的存放的偏移量

 20-23字节,flags

详细见http://blog.sina.com.cn/s/blog_5cf79a900100c1b6.html中关于type1 message中的flags

 24-31字节 server给出的随机数

challenge挑战值,也就是server给出得8个字节的nonce

 32-39字节 context

可选项,可全部填0

 40-47字节,表明target info的信息

40-41:target info的长度

42-43:target info分配的长度

44-47:target info的存放偏移量

 48-55字节:可选 OS的信息,这么麻烦,干脆不使用

 target name

 target info

 

NTLM的实现:

  • 实现PROXY穿越(16):NTLM的PROXY穿越
  • 实现PROXY穿越(15):NTLM Session Security
  • 实现PROXY穿越(14):NTLM type3 Message
  • 实现PROXY穿越(13):NTLM type2 Message
  • 实现PROXY穿越(12):NTLM type1 Message
  • 实现PROXY穿越(11):NTLMv2 session response
  • 实现PROXY穿越(10):NTLMv2 response
  • 实现PROXY穿越(9):NTLMv1 response
  • 实现PROXY穿越(8):NT-Hash的实现
  • 实现PROXY穿越(7):MD4和MD5
  • 实现PROXY穿越(6):LM-Hash的实现
  • 实现PROXY穿越(5):DES算法之三
  • 实现PROXY穿越(4):DES算法之二
  • 实现PROXY穿越(3):DES算法之一
  • 实现PROXY穿越(2):Base64算法
  • 实现PROXY穿越(1):流程和NTLM算法


举报

相关推荐

0 条评论