首页
社区
课程
招聘
王者荣耀是怎么区别IOS端和安卓端
发表于: 2018-3-1 14:37 9493

王者荣耀是怎么区别IOS端和安卓端

2018-3-1 14:37
9493
抓包的时候发现IOS端使用的全部是HTTPS协议而安卓端大部分使用http协议,部分使用https协议。

----------------------这是安卓端抓到的包的http头部------------------------
POST /notice/gather_data/?appid=wx95a3a4d7c627e07d&version=2.14.15a&timestamp=1519885751044&sig=43f8c8f2910ea17f52147973586074d7&encode=2&opua=AndroidSDK_26_HWBKL_8.0.0 HTTP/1.1
Host: msdk.qq.com
Content-Type: application/x-www-form-urlencoded
Content-Encrypt: msdktea
Accept-Encrypt: msdktea
Content-Length: 304
Connection: Keep-Alive
User-Agent: Apache-HttpClient/UNAVAILABLE (java 1.4)
----------------------------------------------------------------------------------------

本来以为是服务器通过判断http提交端的user-agent来判断是什么操作系统并返回相应的服务器列表的。
~~~~~~~~~~~~~~~~ 这是IOS端的链接地址与协议头~~~~~~~~~~~~~~~~~~·
6cfK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6K6M7$3I4Q4x3X3g2E0M7$3c8C8i4K6u0W2M7i4q4Q4x3X3g2U0L8$3#2Q4x3V1k6S2N6i4c8Z5i4K6u0r3N6%4S2X3K9i4u0K6N6q4)9#2k6X3I4G2k6$3W2F1i4K6u0r3i4K6y4r3j5i4m8H3K9h3c8Q4x3@1c8%4P5o6V1#2j5e0y4S2y4r3b7%4j5K6j5J5y4$3f1H3y4$3c8Q4x3U0k6S2L8i4m8Q4x3@1u0$3k6i4u0K6K9h3!0F1i4K6y4p5x3W2)9J5k6e0p5$3i4K6u0W2x3e0k6A6i4K6t1$3j5h3#2H3i4K6y4n7N6r3W2E0k6i4y4@1j5h3#2H3i4K6y4p5x3e0f1I4z5e0R3$3y4e0p5@1z5q4)9J5y4X3q4E0M7q4)9K6b7Y4y4A6k6#2)9K6c8r3q4X3x3o6R3&6k6U0u0X3x3e0j5%4k6h3k6W2z5o6l9$3y4e0j5$3j5$3u0U0x3o6k6X3x3h3p5I4y4o6k6T1i4K6t1$3j5h3#2H3i4K6y4n7k6h3&6U0L8$3c8W2i4K6y4p5x3W2)9J5y4X3q4E0M7q4)9K6b7X3q4D9k6$3!0J5K9i4c8Z5L8g2)9K6c8s2j5I4i4K6t1$3j5h3#2H3i4K6y4n7N6i4y4W2M7W2)9J5k6r3q4Y4k6h3&6@1i4K6y4p5K9h3!0K6i4K6g2X3M7$3c8C8

Host: ssl.msdk.qq.com
Proxy-Connection: close
Content-Encrypt: msdktea
Accept-Encrypt: msdktea
User-Agent: 王者荣耀 1.33.111 rv:0007 (iPhone; iOS 11.2.6; zh_CN)
Content-Length: 600
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

但我将安卓端的包修改成
POST /notice/gather_data/?appid=wx95a3a4d7c627e07d&version=2.16.16i&timestamp=1519885857256&sig=821e97c27149c29e4396069c2821bb2b&encode=2&algorithm=v1&user-agent=ios_sdk HTTP/1.1
Host: msdk.qq.com
Content-Type: application/x-www-form-urlencoded
Content-Encrypt: msdktea
Accept-Encrypt: msdktea
Content-Length: 304
Connection: Keep-Alive
User-Agent: 王者荣耀 1.33.111 rv:0007(iphone;iOS11.2.6;zh_CN)

返回的还是安卓的服务器列表。

~~~~~~~~~~~~~~~~~~~~~~~~~~·
PS:可能我猜错了, msdk.qq.com可能只是登陆的,不和服务器列表相关。



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2018-3-1 14:38 被我只会易编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 3
活跃值: (399)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你用什么抓的包
2018-3-1 18:58
0
雪    币: 69
活跃值: (86)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
落叶的忧伤 你用什么抓的包
wireshark
2018-3-1 19:43
0
雪    币: 97
活跃值: (86)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我只会易 wireshark
wireshark能改包?
2018-3-7 09:05
0
雪    币: 223
活跃值: (222)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
既然你都说安卓和ios客户端了,那我编写的安卓客户端我不显示安卓的服务器列表难道显示ios的服务器列表?
2018-3-7 14:47
0
雪    币: 272
活跃值: (209)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
1、同一个接口可能只支持同一类的设备。(你对比的2个接口都不是同一个接口的)
2、你要抓同一个接口的不同设备请求了啥参数,一般在参数中有标记从android或者iOS请求的。
3、你这个http请求只是游戏行为日志收集的,游戏数据肯定是走tcp的。
2018-3-19 18:29
0
雪    币: 69
活跃值: (86)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我是想要用安卓手机登陆IOS服务器。本来想把头几个传输服务器列表的HTTP协议交换一下。但是好像IOS和安卓用的协议都不一样。
2018-7-17 11:09
0
雪    币: 32
活跃值: (33)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
请求型态是 application/x-www-form-urlencoded
用 POST 的话,你应该先看Post的Body内容吧。
请求的资料可能都里面,但是有可能是加密的。
所以还是需要逆一下发送的参数内容比较安全
2018-7-17 14:36
0
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
你需要把他的msdktea加密解开来,里面有操作系统和一些别的东西。但是/notice/gather_data 返回的数据里解密出来并没有区服的东西,我感觉区服应该在别的地方获取的
2021-5-21 17:47
0
雪    币: 103
活跃值: (1137)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
wx_打工人_888 你需要把他的msdktea加密解开来,里面有操作系统和一些别的东西。但是/notice/gather_data 返回的数据里解密出来并没有区服的东西,我感觉区服应该在别的地方获取的

谢谢

最后于 2021-5-21 18:29 被haoyihebe编辑 ,原因:
2021-5-21 18:13
0
雪    币: 4068
活跃值: (7531)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11

不是通过User-Agent识别???http头里有,url参数也有。正常来说通过UA识别, 但sig这个不通过估计会返回默认的。也可以通过https证书识别。

最后于 2021-5-21 18:31 被微启宇编辑 ,原因:
2021-5-21 18:23
0
游客
登录 | 注册 方可回帖
返回