关注它,不迷路。
本文章中所有内容仅供学习交流,不可用于任何商业用途和非法用途,否则后果自负,如有侵权,请联系作者立即删除!
1.目标地址
'aHR0cHM6Ly9iYnMubmlnaHR0ZWFtLmNuL21lbWJlci5waHA/bW9kPWxvZ2dpbmcmYWN0aW9uPWxvZ2lu'
2.登录分析
由于谷歌浏览器有部分网络包不予显示,我这里用 火狐浏览器进行了抓包。
可以看到,有个谷歌验证码,先随便输入账号,密码设置为 123456,不管验证码,点击 登录按钮,对应的响应是这个接口:
https://***/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=LxB1y&inajax=1
接口中有个 loginhash 的字段与众不同。
提交的数据:
cookie值:
请求头则没有需要注意的地方。这个时候,我们发现响应的是验证码有误:
这个时候,我们把验证码填写一下,再看响应:
发现提示的是密码错误,提交的参数:
2.参数分析
除了 g-recaptcha-response以外,其他参数的基本无变化,而我们关心的用户名是明文,密码 有经验的都应该知道这是 123456 的md5值。
先看loginhash,全局搜索后,定位到这里:
这是请求目标地址响应后的数据,直接正则就能提取了。
再看 formhash,全局搜索后,定位到这里:
这个和loginhash一样,也是在请求目标地址响应后的数据里。
而seccodehash和seccodeverify,这两个值是一样的,全局搜索,定位到这里:
咋一看是这里响应的,其实不是,因为请求链接已经包含这个值了,所以直接搜索这个值才行:
这个值和formhash的一样,也是出现在请求目标地址响应后的数据里。
再看cookie里面的字段,注意到这两个key:
WoQu_2132_lastact 这个在响应的cookie里包含,估计是请求一次更新一次。也是出现在 目标请求后返回的cookie里面:
这个 value的前几个数字却与登录的请求接口不一致,说明中间进行了更新,即下面的这个api接口:
https://xxx/misc.php?mod=seccode&action=update&idhash=cSq2ppJ8&0.7056885350112004=&modid=undefined
最后一个最难的 g-recaptcha-response 参数,可以借助打码平台来获取:
https://dashboard.ez-captcha.com/#/register?inviteCode=ArTRhaGRJkp
具体的食用指南可以参考这篇文章:
国外验证码|谷歌验证码打码平台EZCAPTCHA简短食用指南
点击阅读源文,可以直接到达注册页面。
万事俱备,只欠东风!
我们可以写Python代码进行登录操作了。
完整代码我就不贴出了。运行后的结果:
可以看到有 昵称 的标识,说明登录成功了,nice!
今天的文章就分享到这里,后续分享更多的技巧,敬请期待。
欢迎加入知识星球,学习更多AST和爬虫技巧。