python爬虫 - js逆向之猿人学第十六题webpack简版
2021/12/7 20:19:21
本文主要是介绍python爬虫 - js逆向之猿人学第十六题webpack简版,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
好久没有写猿人学的分析了,今天来分析一波
打开网址:
同样的,也很轻易的拿到接口,
然后这个接口里的请求参数又是迷人的m,m就是我们的目标了
分析
老规矩,搜索:
搜一堆出来,感觉都不太靠谱
那咋办?先看特征,看这个长度是多少的,卧槽,这个长度有点少见了
点调用栈看看:
看到这个就很可疑了
为啥这么说,dispatch分发请求,匿名函数操作,实际的request,所以,关键的逻辑一定在这个request或者匿名函数anonymous前后,再看js名字就叫webpack,那就是webpack打包的,那前面才分析过webpack的东西,不用怕,点进去看:
进来都到这里,打上断点,翻页看看,这不就找到了吗,看着webpack唬人,感觉没两样啊
然后看逻辑,m的值就是n[e(528)](btoa, p_s)生成的了,然后传入的参数btoa,这个可以直接调用,不用多说,再看后面的p_s,定义就在上面,那就只剩n[e(528)]这个不知道啥东西了,鼠标放上去,发现,这个就是前面说的匿名函数anonymous了
点过去,发现就在上面,然后看逻辑,第一个参数是个函数,然后把第二个参数传入函数直接返回,这个不就是python里的装饰器嘛,
那么,也就是说,实际的加密逻辑就是btoa(p_s)
控制台操作下:
这不就出来了吗
然后,前面js逆向安全专题里说了,btoa就是个base64的函数,直接忽略了,python里直接就有,主要是后面的这个参数:
p_s = Date[e(496)](new Date)[e(517)]()
时间相关的都好说,就差这个e(517)和e(496)了,控制台看是啥东西:
最后的结果:
然后这个时间戳的话,是毫秒级别的,13位
调试
那行,直接在python里搞一个看行不行
结语
没有结语,主要就是定位加密逻辑的思路
这篇关于python爬虫 - js逆向之猿人学第十六题webpack简版的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-20Vue资料入门教程:从零开始学习Vue.js
- 2024-09-20Vuex4入门教程:轻松掌握Vue状态管理
- 2024-09-20Element-Plus入门指南:轻松构建美观的Vue组件
- 2024-09-20VueRouter4入门教程:轻松掌握Vue路由
- 2024-09-20Vuex4入门教程:轻松掌握Vue状态管理
- 2024-09-20Vue3课程:新手入门与初级教程详解
- 2024-09-20Vue3课程:新手入门到初级实战指南
- 2024-09-20Vuex4学习:一步一步搭建你的第一个Vuex状态管理库
- 2024-09-19Vue项目中实现TagsView标签栏导航的简单教程
- 2024-09-19Vue3入门指南:基础教程与实战项目