Python查询参数的加密逻辑是什么
本篇内容主要讲解“Python查询参数的加密逻辑是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python查询参数的加密逻辑是什么”吧!
在镇远等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、成都网站设计、成都外贸网站建设 网站设计制作按需定制设计,公司网站建设,企业网站建设,成都品牌网站建设,全网整合营销推广,成都外贸网站制作,镇远网站建设费用合理。
关于某查猫查询参数的加密逻辑分析
先上链接:
aHR0cHM6Ly93d3cucWljaGFtYW8uY29tLw==
抓包分析
找到要分析的参数,通过首页的检索栏,输入企业名称关键字点击查询就可以抓到类似下面的两个包。
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750656.png)
上图标记出来的mfccode
就是需要分析的加密参数
同样的我留意到在上图选中的上一个请求,看着像加密的请求,接下来通过断点来分析是否为加密位置
加密定位
在这个请求上打上XHR 断点
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750657.png)
重新发起请求之后就能看到成功断上
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750658.png)
通过分析堆栈找到下图这个位置找到了加密的位置
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750659.png)
通过断点可以找到加密生成的地方
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750660.png)
或者在堆栈的位置找到下图这个位置也可以快速定位到加密的位置
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750661.png)
加密分析
找到加密的位置后接下来就要分析加密的逻辑了,打上断点可以看到这里进入了一个VM
中
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750662.png)
我们复制到美化网站中格式化后分析
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750663.png)
在编辑器中可以大致看到这段代码对cookie
中的qznewsite.uid
字段进行了操作
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750664.png)
最后将 dc
方法的结果返回给了window.__qzmcf
,这个和我在网页上断点的结果相对应
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750665.png)
只要能跑通这段 js 就可以完成这段加密了。
经过修改可以正常运行了,主要解决的就是关于 node 中调用 window、document 的问题
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750666.png)
但是将结果带入到 Python 代码里并没有如预期一样返回搜索结果,而是返回了登陆的界面,这个结果让我十分费解。
刚刚开始一直以为是我爬虫代码的问题,之后突然想到,这个 js 代码是由对方返回给客户端的,所以这个 js 代码应该动态的。
经过对比,发现mov
以及sk
的长数组都是动态的,或许还有其他的代码是动态的不过这间接的验证了我的猜测。
所以 js 加密的代码写死调用是没有办法完成破解的,想通这一点,我只要将返回回来的 js 代码动态的调用就可以了。
第一步、将 cookie 传入,替换为第一次访问首页返回的 cookie 即可,不过之后测试这一步貌似没有验证,直接写死也是可以的。
第二步、将服务端返回的动态调用,只要在静态的代码基础上小修一下就行了,例如声明window
,document
这些操作,之前的文章均有提及
第三步、调用window.__qzmcf
这个方法,完成加密参数的生成
完成上面的步骤之后重新调用就可以正确拿到网页的结果了。
![Python查询参数的加密逻辑是什么](/upload/otherpic65/750667.png)
分享标题:Python查询参数的加密逻辑是什么
标题链接:http://azwzsj.com/article/jjeccj.html