百趣云 百趣云的博客

芒果tv扫码登录协议

⚠️ 本文最后更新于2024年10月21日,已经过了210天没有更新,若内容或图片失效,请留言反馈

芒果tv扫码登录协议

前阵子芒果tv扫码协议还是很好破解的,因为把二维码链接提取出来,就可以直接跳转到账号密码登录页,等到用户登录成功之后,电脑上的二维码也会自动扫码登录成功,借着这一思维,就可以抓包登录页面的登录接口,然后实现自动登录账号,然而现在这个方法是不现实的,因为芒果tv最新版的软件已经去除这种方式了,只支持微信和芒果tv,这就很头大了2024-10-21T13:23:04.png

我们可以大略的看到,生成的二维码的信息包含一个链接和qcode,这个qcode就是关键的识别id,我们需要怎么实现呢?借助着之前的思维去试试还是不行,毕竟微信内部通过code的方式转换识别微信账号,芒果tv又是他自家的软件,反正微信肯定别想了,肯定不能实现的,看来只能对他自家的软件去下手了,我们打开steam软件,对芒果tv手机端扫码的过程进行抓包解析,抓到了几十个包,逐个包去分析去看,结果再最后点击登录的那个地方,走了scan接口,我们可以看看他的包curl 'https://xxx.mgtv.com/xxx?_support=10101001&abroad=0&ageMode=0&allowedRC=1&appVersion=8.2.5&ch=AppStore&device=iPhone&deviceid=e60d5bf6-8201-4deb-b5b6-d2ba45dba317&did=af6665c895c689f6226d5ba1e4dd9450a9df7f27&dname=iPhone&from=pcweb&invoker=hunantvphone&islogin=1&mac=af6665c895c689f6226d5ba1e4dd9450a9df7f27&osType=ios&osVersion=17.7&pic_use=multi&seqId=212b2b063cfde93a338c885d4a5876ce&src=mgtv&testversion=&ticket=BA33D51071953B09A1698AD0C7CE06D3&uid=17294279889091724227197' -H 'Host: nuc.api.mgtv.com' -H 'Cookie: mba_deviceid=e2b05951-8c21-5425-6540-9c49f1ab399b; mg_uuid=465c1e9d-9fc2-40de-bae4-a3b49a420cca; SOURCE_INFO={%22source%22:%22xm_channel%22%2C%22source_channel%22:%22mgtv%22}' -H 'Accept: */*' -H 'x-r-i: 3B3201F6-9E4B-44EF-8C7A-D9715A3176C9' -H 'x-remained-ms: 4000' -H 'x-l-r-i: C8FAA9DB-BE16-4FEA-9F98-F1A4735342E4' -H 'User-Agent: MGTV-iPhone-appstore/8.2.5 (iPhone; iOS 17.7; Scale/3.00)' -H 'Accept-Language: zh-Hans-CN;q=1, en-CN;q=0.9, en-GB;q=0.8' -H 'Accept-Encoding: gzip, deflate, br' -H 'Connection: keep-alive' 我们可以看到这个参数还是很多的,我们慢慢去调试发现最有用的信息就是uid和ticket了,这个uid其实就是qcode的值,ticket可以理解为token,既然这里抓出来了,模拟一下,也成功实现登录成功,那我们只要想办法把账号密码自动登录然后拿到他的ticket然后再去走咱们抓的接口,那样不就成了?我们先对官网的账号密码登录去抓包,发现有password和sign值是加密的,我们开启debug去逆向看代码,写了一大串代码结果发现还是不太行,我们模拟出了sign,但是password模拟的有点出错,最后研究了一天,放弃了这条路,于是我们对他的历史版本软件去抓包,抓到了一个r开头的参数,然后扫码解析出来了,就是账号密码登录,这个账号密码并非是官网的接口,看来还是有搞头,我们模拟了一遍接口,成功拿到ticket了,于是我们开始封装接口,https://api.teawhites.cn/index/login,2024-10-21T13:33:55.png
可以看一下以上的请求体,就知道了,于是直接拿ticket去跑,走我们自己封装的第二个扫码接口,https://api.teawhites.cn/index/scan,传url和tk即可

总结:https://api.teawhites.cn/index/login(登录)传username和password
https://api.teawhites.cn/index/scan(扫码)传ticket和url(二维码解析转换的)

合作微信联系:teawhites

By 百趣云 阅读量:311 On