js逆向:
1、凡科网()
通过登录页面练习
再练习的过程中发现 我在登录错误密码之后会出现滑块验证(瞬间感觉头大了 但是学习吗 硬着头皮上了)还是常规的操作
打开 开发者模式 xhr 之后 手动滑动正确的位置进行验证 验证成功 chrome抓包工具会捕获到 响应的验证请求:
Request URL: /verify/validate
在返回参数 response :
{"success":true,"msg":{"checkSign":"CS1ALDT-c0ECg4xMTIuMjI5LjExMC4zNg","validateResult":1}}
发现 checkSign 这个不就是我们验证通过的黄金钥匙吗。
然后 在 search 中搜索这个倒霉的参数。(不得不说 这个网站真水,反复试了几次这个 checkSign 就没有变过。。)
但是学习吗还是要找到对应的js的
/*** 滑块验证码模块(调用公共组件:faitest_1_3)* @author: * @email:* 此处将作者和邮箱删掉了 无意冒犯*/var sliderCaptcha = (function () {// 初始化滑块验证码组件(faitest_1_3)function _initCaptchaComp (callback) {initFaitest({bss: 4, // opt为4bssKey: 'ALihhLoGCAEQBBoHWzEsMyw1XSIJ6ZKf55Sz5qC5'}, function (checkSign, fallbacked) {callback && callback(checkSign, fallbacked || false);}, function () {});}return {initCaptchaComp: _initCaptchaComp}})();
有了js源码之后,我们就可以通过excejs包调用此js 得到 checkSign 参数进而进行验证登录
滑块验证 checkSign参数解决之后 登录参数就剩下pwd这一个加密参数了(加油,奥里给!)
随便输入一个123456,在post携带的参数为:e10adc3949ba59abbe56e057f20f883e
看这长度和样子 不会是md5加密吧
然后在 search 中搜索 pwd 定位
找到含有pwd 的js模块,很好果然简单 就一个哈哈哈
点进去再次搜索pwd 结果49个。。。(幸好咱有秘诀,搜索到的过多 我们在搜索的参数后面加上":“或者是”="即 :我们搜索 pwd= 此时返回匹配值只有一个)
params.push( '&pwd=' + $.md5( pwd ) );
漂亮果然好用 果然简单 直接写着是md5加密。。
然后打上断点 调试,点击登录 果然在此处停了
使用 hashlib 库
import hashlib#import md5 #Python2里的引用s='123456'# s.encode()#变成bytes类型才能加密m= hashlib.md5(s.encode())print(m.hexdigest())# 输出结果为:e10adc3949ba59abbe56e057f20f883e
此时我们就具备了 凡科网登录所携带的全部参数。就可以实现登录操作了!
持续更新中
~~作者纯学习中 侵删。。。
如果觉得《爬虫进阶学习之路---js逆向登录》对你有帮助,请点赞、收藏,并留下你的观点哦!