MSNP10协议分析 01.登录 [by progsoft]

  先给出一个成功登陆的案例
<connect> messenger.hotmail.com, port 1863 (连接分配服务器DS)
>>>  VER 1 MSNP10 MSNP9 CVR0/r/n
<<<  VER 1 MSNP10 MSNP9 CVR0/r/n

>>>  CVR 2 0x0804 winnt 5.0 i386 MSNMSGR 6.2.0133 MSMSGS example@hotmail.com/r/n
<<<  CVR 2 6.2.0137 6.2.0137 6.2.0133 http://download.microsoft.com/download/7/3/6/736d4a94-0c9e-4fde-b2f7-d27c9585344d/SetupDL.EXE http://messenger.msn.com/cn/r/n

>>>  USR 3 TWN I example@hotmail.com/r/n
<<<  XFR 3 NS 207.46.106.111:1863 0 207.46.104.20:1863/r/n
<close> messenger.hotmail.com (关闭分配服务器DS)

<connect> 207.46.106.111:1863 (连接通知服务器NS)
>>>  VER 4 MSNP10 MSNP9 CVR0/r/n
<<<  VER 4 MSNP10 MSNP9 CVR0/r/n

>>>  CVR 5 0x0804 winnt 5.0 i386 MSNMSGR 6.2.0133 MSMSGS example@hotmail.com/r/n
<<<  CVR 5 6.2.0137 6.2.0137 6.2.0133 http://download.microsoft.com/download/7/3/6/736d4a94-0c9e-4fde-b2f7-d27c9585344d/SetupDL.EXE http://messenger.msn.com/cn/r/n

>>>  USR 6 TWN I example@hotmail.com/r/n
<<<  USR 6 TWN S lc=1033,id=507,tw=40,fs=1,ru=http%3A%2F%2Fmessenger%2Emsn%2Ecom,ct=1092884412,kpp=1,kv=5,ver=2.1.6000.1,tpf=016b4e2dc54f9fe757a1bb89a193b20f/r/n

>>>  USR 7 TWN S t=5Uplhbz0rDRDEXxbWaUHTLMQGtdtS0higP2gWaLyYVlQk3Dqoie4dk8BlqYQ58iWQnn9NWXv6!5exSgeCmZebYKw$$&p=5UGdAYlQ9GnaN2T1DZsnwfxNALqNWxRvNQ8QKd6hTxNK11w1Y9FavahVnFgppUDeNPSRaPsUsr94lSnlZ*NncRzrGjmZnm5sf6ijY7AL1RosK9U6JtktRTS2VD83XTK4Mj!Z1bpN9a1ekVhJxNAc*R72iuRkpCMBZ3S!kSs9d!InA*b4coYoBy*Q$$/r/n
<<<  USR 7 OK example@hotmail.com 1 0/r/n
<<<  MSG Hotmail Hotmail 478/r/n
<<<  MIME-Version: 1.0/r/n
<<<  Content-Type: text/x-msmsgsprofile; charset=UTF-8/r/n
<<<  LoginTime: 1092900336/r/n
<<<  EmailEnabled: 1/r/n
<<<  MemberIdHigh: 393216/r/n
<<<  MemberIdLow: -1973826610/r/n
<<<  lang_preference: 2052/r/n
<<<  preferredEmail: /r/n
<<<  country: CN/r/n
<<<  PostalCode: /r/n
<<<  Gender: /r/n
<<<  Kid: 0/r/n
<<<  Age: /r/n
<<<  BDayPre: /r/n
<<<  Birthday: /r/n
<<<  Wallet: /r/n
<<<  Flags: 1027/r/n
<<<  sid: 507/r/n
<<<  kv: 5/r/n
<<<  MSPAuth: 5vtXPhjpbDgMo38!5RINb67*QA0apj9arggB6TY2QQB13mV6m9ZbL01rK3rN3cK2!zFjHCiEThvcL!Z6C5NFtdkg$$/r/n
<<<  ClientIP: 218.75.208.52/r/n
<<<  ClientPort: 54976/r/n
<<<  ABCHMigrated: 1/r/n/r/n
歇口气,登陆成功~!

下面我们给出一个说明。

第一个阶段:连接MSN分配服务器DS,即连接到服务器"messenger.hotmail.com:1863"
连接后,我们就可以开始登陆过程了。
第一步是交换MSN客户端与服务器协议的版本。
客户端发送>>> VER 1 MSNP10 MSNP9 CVR0/r/n
表示告诉服务器我(即你的客户端)支持MSNP10与MSNP9协议工作。
服务器回应<<< VER 1 MSNP10 MSNP9 CVR0/r/n
表示同意你使用MSNP10或MSNP9协议工作。
现在客户端和服务器之间就已经确定它们之间将要进行通讯的版本。

第二步是与服务器交流系统环境
客户端发送>>>  CVR 2 0x0804 winnt 5.0 i386 MSNMSGR 6.2.0133 MSMSGS example@hotmail.com/r/n
0x0804 winnt 5.0 i386 指出客户端当前的运行环境是win2000,使用的是Intel的微处理器.
MSNMSGR 6.2.0133 MSMSGS 指出msmsgs.exe的版本号
服务器回应<<<  CVR 2 6.2.0137 6.2.0137 6.2.0133 http://download.microsoft.com/download/7/3/6/736d4a94-0c9e-4fde-b2f7-d27c9585344d/SetupDL.EXE http://messenger.msn.com/cn/r/n
服务器回应参数包括最高版本号,可支持版本范围,及提供下载最新版本和其它信息地址
注:CVR命令发送并不是必须,无论此命令是否发送,MSN协议都可以正确工作。

第三步是请求登陆服务器
客户端发送>>>  USR 3 TWN I example@hotmail.com/r/n
TWN I 指出向服务器发送PassPort
服务器回应<<<  XFR 3 NS 207.46.106.111:1863 0 207.46.104.20:1863/r/n
NS 指出要求客户端换地址重新连接
207.46.106.111 要求重新连接地址,即NS服务器地址
207.46.104.20 即messenger.hotmail.com地址
取得重新登陆的指示之后,关闭此连接。进入第二个阶段。

第二个阶段:连接MSN通知服务器NS,即连接上述207.46.106.111:1863
取得连接后,第一、二步同第一阶段第一、二步操作。
第三步是请求登陆服务器
客户端发送>>>  USR 6 TWN I example@hotmail.com/r/n,同上。
服务器回应<<<  USR 6 TWN S lc=1033,id=...,tpf=.../r/n
TWN S 指出要求用户进行SSL,身份认证
lc=1033,id=...,tpf=... 指出SSL身份认证的重要信息。
SSL身份认证此处略,后继详细叙述。SSL身份认证后,可获得客户端“入场圈”,如t=5Up...$$&p=5UG...$$

第四步是请求认证身份登陆
客户端发送>>>  USR 7 TWN S t=5Up...$$&p=5UG...$$/r/n
服务器回应<<<  USR 7 OK example@hotmail.com 1 0/r/n
OK example@hotmail.com指示登陆成功的Passport为example@hotmail.com
服务器回应<<<  MSG Hotmail Hotmail 478/r/n
返回信息为一些用户基本参数,登陆客户端地址及IP等

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值