前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 爬虫进阶必备 | 某历史价格查询网站参数 checkCode 加密逻辑分析(难度半颗星)

Python 爬虫进阶必备 | 某历史价格查询网站参数 checkCode 加密逻辑分析(难度半颗星)

作者头像
咸鱼学Python
发布2022-06-24 14:34:39
6630
发布2022-06-24 14:34:39
举报
文章被收录于专栏:咸鱼学Python咸鱼学Python

图源:网络

今日网站

aHR0cDovL3d3dy50b29sMTY4LmNuL2hpc3Rvcnkv

站点来自咸鱼技术交流 3 群

浅浅看了一眼,大概以为就是AAencode+jsjiami v6得组合

不过经过分析发现和这俩东西一点关系没有,又是被加密忽悠住得一天

抓包分析

主要请求得结果是这三个

然后一些请求用到参数是下面这个请求返回得

这里重点分析得包是ptinfo

这个包返回了code,这个code在之后请求价格详情和品名得时候都有用到

所以这个请求中的参数是分析的关键

经过重放请求分析,udcookie中的值,没有登录态的就可以忽略了,可固定可随机

reqid是页面返回的需要xpath解析一下,con是需要查询价格的商品链接

加密分析与还原

这个checkCode比较有意思,他和页面返回的checkCode长的很像

直接看 js 的调用栈,可以看到下面的入口

直接单步进去就找到这个加密的地方了

看着是不是很唬人?

我们之前也给大家分析过像aaencode这类看着很秀的其实都很简单,直接找个解密站就可以还原出来了,包括不用解密站,用控制台console.log也是可以。

至于下面这个类似ob混淆的东西,其实也不难,毕竟现在的js逆向卷成这样,ast还原ali哲哥哥都开源了。

但是今天这个站都没必要研究是否还原,,因为关键的逻辑就这个encodeURICompoent方法

应该说不是关键逻辑了,是全部逻辑。。

我们走走逻辑,可以看看到

方法第一行是去了#reqid的值

方法第二行是做了#reqid值得反转

方法第三行是将反转后得值,取出第 7- 10 得字符

方法第四行是取出#checkCodeId的值

方法第五行是将上一行取出的值+“P”+第三行取出的 3 个字符做一个字符串拼接

方法第六行就是将上面拼接好的值赋值会页面,就完事了

好像做了防护,好像也没有做防护。。

不过毕竟是一个免费的网站,功能还是很不错的,今天的文章就这样,咱们下次再会~

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

收到请回复~

我们下次再见。

对了,看完记得一键三连,这个对我真的很重要。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 咸鱼学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 今日网站
    • 抓包分析
      • 加密分析与还原
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档