快手登录滑块验证(一)
很久之前发在知乎的文章,博客好久没更新,转过来水个文
快手登录
快手的接口很简单,带着登录后的cookie去请求/pass/kuaishou/login/passToken这个接口,response中的web_ph、web_st就是接口需要的cookie。ok,让我们看看怎么登录。
打开fiddler,无痕打开快手,输入手机号点获取验证码,发现了以下带有手机号的post请求:
看这个接口名字就知道是请求发送验证码的,可以看到cookie带了个did,搜一下did,发现请求首页时候response会返回带有did的cookie:
输入验证码点登录,发现/pass/kuaishou/login/mobileCode就是登录请求:
写个登录demo(注意header referer):
运行一下:
OK了
验证码逆向
拿到cookie只是第一步,后续的请求经常会出现滑块验证。
追/rest/zt/captcha/sliding/verify这条请求的栈,发现生成加密的位置:
打个断点滑一下滑块:
再调试下,确认就是这一步加密的验证码:
还原参数:
r为captchaSession、浏览器指纹、滑动轨迹做了一个url编码,再简写就是:
到这儿已经很明显了,AES加密。 但是key(即为e[0])和iv(即为e[1])都不是16/32位的?尝试直接base64解密:
还是不对劲,只能继续追parse和toString
追parse:
追toString:
到这儿就ok了,把上面的js扣下来。写个demo测试下:
ok了。
本文是原创文章,采用 CC 4.0 协议,完整转载请注明来自 http://www.1997.pro/
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果