Python 爬虫进阶必备 | 某k12注册加密参数分析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python 爬虫进阶必备 | 某k12注册加密参数分析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1687字,纯文字阅读大概需要3分钟。
内容图文
今日网站
aHR0cHM6Ly9hZXJmYXlpbmcuY29tLw==
这个网站来自读者投稿
需要分析的是右上角注册时的 s
值
抓包分析与定位
像我这样填入测试信息,点击注册提交
可以在开发者工具中找到下面的注册包
这里的 s 值就是需要分析的参数值
因为这个Register
是 xhr 请求,所以最方便的就是使用 xhr 断点分析请求
切换至sources
选项卡,在右侧添加对应的xhr
断点
再次点击注册按钮,断点会断在下面这个位置
在这个位置我们只能看到网页上提交的数据中s
已经生成好了
代表这里不是s
加密的地方,所以点击右侧的call stack
中下一个堆栈(指上一层的代码逻辑)
同样查看代码中的参数,发现刚刚的r
是由t
传入的,同样查看t
的值
参考上图可以看到t
中的s
值也生成好了,所以按照刚刚的操作,需要继续分析上一层的代码逻辑,切换至下一个堆栈
不过点击下一个堆栈缺提示下面的报错
这找不到源文件不就没办法调试了吗?
因为我也是第一次遇到这样的情况,通过搜索引擎找到了相关的资料
参考链接:https://stackoverflow.com/questions/60369755/could-not-load-content-for-webpack-source-file-in-chrome-sources-tab
这个应该是?webpack?的最小化生产模式导致在devtool模式的时候找不到文件映射
(不是专业的前端开发,如果理解有误欢迎大佬指正)
在上面的参考链接中也提供了解决办法,可以通过快捷键 ctrl + o 重新加载文件
通过快捷键查找并加载文件之后,就可以看到参数s
的生成逻辑了
加密分析
通过加载查找后的文件,我们可以得出 s
的生成逻辑
k?=?(0,c.default)(n?+?"?"?+?w?+?x)
这个 k 的返回值 ,分别是t
和s
主要的加密方法是c.default
,传入的参数是n + "?" + w +x
这里需要注意的是x
的值是DUE$DEHFYE(YRUEHD*&
,类似 hash 加盐的操作
n 是/WebApi/Users/Register
,w 是空的字符串
进一步打上断点单步调试可以看到 s 的加密逻辑
可以看到s
是sha1.hash(r)
的结果
这里的r
是(e || "") + "&t=" + n
n
是当前的时间戳 + 2592030000
那么r
的值就是/WebApi/Users/Register?DUE$DEHFYE(YRUEHD*&&t=
+ n
直接拿去测试可以得出一样的结果
以上就是今天的全部内容了,咱们下次再会~
内容总结
以上是互联网集市为您收集整理的Python 爬虫进阶必备 | 某k12注册加密参数分析全部内容,希望文章能够帮你解决Python 爬虫进阶必备 | 某k12注册加密参数分析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。