ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python爬虫 - js逆向之猿人学第十六题webpack简版

2021-12-07 18:03:32  阅读:164  来源: 互联网

标签:这个 函数 python 简版 btoa 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,简版,btoa,js,webpack
来源: https://www.cnblogs.com/Eeyhan/p/15657354.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有