前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >模拟登录知乎,新版登录2020/1/13版本

模拟登录知乎,新版登录2020/1/13版本

作者头像
懒py夏洛
发布2022-06-01 20:25:18
3860
发布2022-06-01 20:25:18
举报
该文章主要提供交流学习使用,请勿利用其进行不当行为!
如本篇文章侵犯了贵公司的隐私,请联系我立刻删除!

知乎相信很多人都知道,里面的文章也是不错的,今天我们来做一下知乎的模拟登陆。

知乎改版后的加密和之前的差不多吧。。。都是老套路。。毕竟是小改版。

接下来我们开始研究知乎撒!!

我们打开知乎 https://www.zhihu.com/signin?next=%2F

随便输入账号密码。然后点击登录,抓包即可!!

知乎验证有验证码和字体颠倒验证!!

我们找到数据包,然后看form data参数。。。然后看到。。这特喵是的是个什么东西,没有参数名字,怎么搜索呢!!是不是一脸懵逼哈!!

懵逼中。。。。。。。。。。

这里我们先搜索 sign_in 。登录请求的url。。搜一下!!

然后看到body。

我们下个断点,看看这是什么鬼!!!

然后看到body数据如下:

研究发现 client_id 是固定的。

timestamp 是13位时间戳。

signature是js加密的。

其他均为正常参数。

那接下来我们研究一下signature是如何生成的!!

然后发现是不是都很熟悉撒!!!

我们打下断点调试!!!

是通过a.getHMAC('HEX'),形成的参数。

这里看到HMAC,那就可以确定这是HMAC加密,通过HEX加密,加密类型SHA-1,,这里全都有。。

多看看加密的名字,可以少走很多弯路!!

这里可以用python实现,也可以搜jsHMAC加密,,复制代码即可,,,,如果实在是闲的话。。。。可以扣他们的代码。也算是长长知识。。。

由上面的代码看到,update传入4个参数,e,x,"com.zhihu.web",n。。

都是之前的参数。。

这里还有一点,HMAC的key值,上面也有。固定的。

我们这里用js运行一下!!

可以看一下,,结果是不是和上面的结果一样呢!!!

这里推荐一款工具,wt-js。

里面有很多js加密的代码,可以直接使用,很方便的!!!

我们知道了所有参数了。接下来,我们找一下data参数,到底怎么形成的!

这里有一个简单的办法,不用断点调试,一步一步的找代码,找到加密的地方。

这里我们看到有一个参数zsEncrypt。这种东西一定要注意!!!

zsEncrypt为true。

那我们就搜索一下这个东西!!

在当前的js脚本当中搜索zsEncrypt

然后再这个地方下上断点。

看到a是不是很熟悉撒!!!

那我们就往下运行。。

这里找到了我们最终的生成地方了,

看下结果,是对的!!

通过 r.default函数,传入a参数,生成我们需要的data参数。

那我们就进入r.default函数中。

然后就是扣代码了。

这里我们把当前函数所在的一个大函数的代码全部抠出来。

然后把头部和尾部删掉!!

然后调试!!

然后发现exports未定义,

我们把这一段代码删除掉!!

然后运行!!

然后又是未定义,把相关的exports都删掉即可!!

我们传入参数接着运行!

得出结果!!

今天的分享到底结束了撒!!!谢谢大家观看!!!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 python爬虫与js逆向 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 该文章主要提供交流学习使用,请勿利用其进行不当行为!
  • 如本篇文章侵犯了贵公司的隐私,请联系我立刻删除!
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档