Python 爬虫进阶必备 | 某公共资源交易网详情页链接加密逻辑分析

举报
xianyuplus 发表于 2021/09/24 09:00:51 2021/09/24
【摘要】 今日网站aHR0cDovL2dnenkuendmd2IudGouZ292LmNuL3F1ZXJ5Q29udGVudC1qeXh4LmpzcHg=这个网站来自技术交流群聊记录,忘记是哪个大佬发的,听说很简单,所以复现一下 抓包分析把上面的密文解开,打开是列表页面,我们要分析的加密是点击链接之后打开新页面的网址这个网址在列表页的网址上的显示如下所以需要抓包看看这个点击的过程做了什么操作。不过这...

今日网站

aHR0cDovL2dnenkuendmd2IudGouZ292LmNuL3F1ZXJ5Q29udGVudC1qeXh4LmpzcHg=

这个网站来自技术交流群聊记录,忘记是哪个大佬发的,听说很简单,所以复现一下

抓包分析

把上面的密文解开,打开是列表页面,我们要分析的加密是点击链接之后打开新页面的网址

这个网址在列表页的网址上的显示如下

所以需要抓包看看这个点击的过程做了什么操作。

不过这里比较难受的是这个点击链接是从新的标签页打开,这个时候开发者工具就抓不到新页面的包了

有人会说,那我就用抓包工具不就好了,话是这么讲,但是像我这么懒,只想躺平连个抓包工具都不想开的要怎么搞?

其实很简单,直接改代码

找到要打开的页面链接,删掉 html 中下图红框的代码就可以了

这个时候点击对应的列表项,就可以抓到这个请求详情页的包了。

加密定位

通过上面这个方法可以抓到请求详情页的包,自然也可以通过堆栈找到 js 的加密逻辑了。

通过Initiator可以看到堆栈信息

这里就可以看到js的加密逻辑了。

注意

不要等待请求跳转过去!!!

不要等待请求跳转过去!!!

不要等待请求跳转过去!!!

跳转过去 eval 这个栈就点不了了,所以看到Network里面出现了包的时候就取消请求

这个时候,Initiator中的eval才可以点击

不然就会是下面这样的

eval 的位置显示 unkown

加密分析

找到js加密的位置剩下的就简单了

这一段是加密的主逻辑,这里调用了aes加密

我们复制到 webstrom 里调试下

删掉无关的逻辑,例如eer.test这些逻辑判断

就看到下面这样的代码了

记得要安装crypto-js,不然加密逻辑要自己扣,麻烦

这个时候运行,代码提示s未定义

这个很简单的,从这个图里可以知道eval的上一个栈是jquery.mini.js

所以在这个文件里找就可以了

直接检索定义var s = 只有一个结果

带入这个s值到我们的js逻辑里就可以的到下面的结果了

再和网页上对比一下

结果是一样的,本篇的难度主要在这个抓包不好抓,定位eval需要一些浏览器的小技巧,适合新手锻炼调试手法。

我是没有更新就在摸鱼的咸鱼

以上就是今天的全部内容了

收到请回复~

我们下次再见。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。