Python 爬虫进阶必备 | 某历史价格查询网站参数 checkCode 加密逻辑分析(难度半颗星)
第一时间关注Python技术干货!
图源:网络
今日网站aHR0cDovL3d3dy50b29sMTY4LmNuL2hpc3Rvcnkv
站点来自咸鱼技术交流 3 群
浅浅看了一眼,大概以为就是AAencode+jsjiami v6得组合
不过经过分析发现和这俩东西一点关系没有,又是被加密忽悠住得一天
抓包分析主要请求得结果是这三个
然后一些请求用到参数是下面这个请求返回得
这里重点分析得包是ptinfo
这个包返回了code,这个code在之后请求价格详情和品名得时候都有用到
所以这个请求中的参数是分析的关键
经过重放请求分析,ud是cookie中的值,没有登录态的就可以忽略了,可固定可随机
reqid是页面返回的需要xpath解析一下,con是需要查询价格的商品链接
加密分析与还原这个checkCode比较有意思,他和页面返回的checkCode长的很像
直接看 js 的调用栈,可以看到下面的入口
直接单步进去就找到这个加密的地方了
看着是不是很唬人?
我们之前也给大家分析过像aaencode这类看着很秀的其实都很简单,直接找个解密站就可以还原出来了,包括不用解密站,用控制台console.log也是可以。
至于下面这个类似ob混淆的东西,其实也不难,毕竟现在的js逆向卷成这样,ast还原ali哲哥哥都开源了。
但是今天这个站都没必要研究是否还原,,因为关键的逻辑就这个encodeURICompoent方法
应该说不是关键逻辑了,是全部逻辑。。
我们走走逻辑,可以看看到
方法第一行是去了#reqid的值
方法第二行是做了#reqid值得反转
方法第三行是将反转后得值,取出第 7- 10 得字符
方法第四行是取出#checkCodeId的值
方法第五行是将上一行取出的值+“P”+第三行取出的 3 个字符做一个字符串拼接
方法第六行就是将上面拼接好的值赋值会页面,就完事了
好像做了防护,好像也没有做防护。。
不过毕竟是一个免费的网站,功能还是很不错的,今天的文章就这样,咱们下次再会~
公众号配套技术交流群,备注【咸鱼666】,入群交流
我是没有更新就在摸鱼的咸鱼
收到请回复~
我们下次再见。
对了,看完记得一键三连,这个对我真的很重要。
相关阅读
-
世界热推荐:今晚7:00直播丨下一个突破...
今晚19:00,Cocos视频号直播马上点击【预约】啦↓↓↓在运营了三年... -
NFT周刊|Magic Eden宣布支持Polygon网...
Block-986在NFT这样的市场,每周都会有相当多项目起起伏伏。在过去... -
环球今亮点!头条观察 | DeFi的兴衰与...
在比特币得到机构关注之后,许多财务专家预测世界将因为加密货币的... -
重新审视合作,体育Crypto的可靠关系才能双赢
Block-987即使在体育Crypto领域,人们的目光仍然集中在FTX上。随着... -
简讯:前端单元测试,更进一步
前端测试@2022如果从2014年Jest的第一个版本发布开始计算,前端开发... -
焦点热讯:刘强东这波操作秀
近日,刘强东发布京东全员信,信中提到:自2023年1月1日起,逐步为...