【2023-03-10】JS逆向之美团滑块

提示:文章仅供参考,禁止用于非法途径


前言

目标网站:aHR0cHM6Ly9wYXNzcG9ydC5tZWl0dWFuLmNvbS9hY2NvdW50L3VuaXRpdmVsb2dpbg==

页面分析

接口流程

1.https://passport.meituan.com/account/unitivelogin

主页接口:需获取下面的参数,都在第一个链接返回的源码里
csrf
uuid
token_id 
continues


2.https://passport.meituan.com/account/unitivelogin?risk_partner=0……

登入接口,分别有两加密参数password、h5Fingerprint


3.https://verify.meituan.com/v2/ext_api/page_data

验证码获取的接口,拿这些参数,后面会用到
    verifyMethodVersion = json.loads(res['data']['verifyMethodVersion'])  # d 就是 slide.js的版本
    slider = json.loads(verifyMethodVersion['slider'])
    yodaVersion = json.loads(res['data']['yodaVersion'])
    timestamp = res['data']['timestamp']
    sign = res['data']['sign']
    ses = res['data']['session']
    requestCode = res['data']['request_code']


4.https://verify.meituan.com/v2/ext_api/login/verify

验证接口,也有两加密参数behavior、_token,还有两个动态的参数v_c、3eac9809,还有请求头里的Authencation

第一步要用到的参数在这

【2023-03-10】JS逆向之美团滑块_第1张图片

 直接正则匹配过来即可

接着是password,这个是rsa加密的,找到pbk即可

【2023-03-10】JS逆向之美团滑块_第2张图片

然后是 h5Fingerprint,要扣下代码了,下断点找入口

要的js都在这个default文件里

【2023-03-10】JS逆向之美团滑块_第3张图片

扣完几千行吧,也可以全复制,加密用到的环境参数可以写死

【2023-03-10】JS逆向之美团滑块_第4张图片

返回后的这几个东西都会用到,特别是这个时间戳,后面加密都会校验这玩意

【2023-03-10】JS逆向之美团滑块_第5张图片

 验证这块先看 behavior 参数吧,断点位置也好找

传了三个玩意,滑动轨迹,requestCode,false

【2023-03-10】JS逆向之美团滑块_第6张图片

 看看轨迹数组,其中这个时间戳还有point校验比较严格

【2023-03-10】JS逆向之美团滑块_第7张图片

 加密函数bH,这些就自己扣吧,可以先反混淆下,方便看

【2023-03-10】JS逆向之美团滑块_第8张图片

 里面会有个window.f 是用sign和session解密出来的,需要注意,会用到

【2023-03-10】JS逆向之美团滑块_第9张图片

接着看_token

【2023-03-10】JS逆向之美团滑块_第10张图片

 加密方式跟behebar一样 ,不用的是用到的轨迹跟一些浏览器参数

 【2023-03-10】JS逆向之美团滑块_第11张图片

这里看看fT跟mT吧,长度固定是60的,而且这两组有转换的管系,并且跟bebavor里的point也有关系,总之轨迹就是比较复杂

最后就是请求头里的Authencation了,这里面久有用到之前说的时间戳了,然后MD5下拼接的字符串

【2023-03-10】JS逆向之美团滑块_第12张图片

这两动态的参数忘记说了,是在js里取的,反混淆后比较方便找

【2023-03-10】JS逆向之美团滑块_第13张图片

【2023-03-10】JS逆向之美团滑块_第14张图片

 正则匹配返回的js就有了

【2023-03-10】JS逆向之美团滑块_第15张图片


总结

最后看下成果吧,基本是全过的

【2023-03-10】JS逆向之美团滑块_第16张图片

你可能感兴趣的:(爬虫,js逆向,验证码,python,爬虫)