js逆向-某港股打新网数据解密

声明

本文仅供学习参考,切勿用于其他途径,违者后果自负!

前言

目标网站:aHR0cHM6Ly93d3cubGlhbmdodWFpcG8uY29tLyMvbGlzdGVkX3N0b2NrX2xpc3Q=
接口信息:aHR0cHM6Ly9hcGkubGlhbmdodWFpcG8uY29tL2hrX2lwby9nZXRfcGFnZWRfbGlzdGVkX3N0b2NrX2xpc3Q=

目标: 解密data

参数分析

通过抓包发现该接口返回了一串json数据,其中data部分是密文,由此推断有加密。所以解密数据是爬虫步骤的重中之重。
在这里插入图片描述
废话不多说,使用Initiator搜寻堆栈,通过跟栈去寻找断点。
看到堆栈后随便打下一个断点,在这里我选择的是第一个断点。(因为这个网站打下其他断点断不下来)
在这里插入图片描述

在这里插入图片描述
OK,断点已经成功断下,点击下一页去让它重新断下。成功断下后,就要开始找data的解密位置了。
在这里插入图片描述

像诸如spread.js和vue.js这些文件,熟悉前端的同学都知道这是前端长使用的第三方库,所以在这里可以直接排除点。那么剩下的就只有这个3.60…….js文件了。
点进去看一下,怎么搜索数据呢。
因为返回的是JSON格式的数据,所以数据肯定要反序列化然后返回到网页中去渲染。直接搜索JSON.parse即可。

在这里插入图片描述

一共有八个地方,分别打上断点。重复老动作,翻页。松开之前的断点,却发现断点没有反应,难不成是找错了?

在这里插入图片描述
看来今天碰到拦路虎了,搞不下来。再见!













开个玩笑,我们辛辛苦苦找到了数据解密的位置,断点断不下来。经过分析确认没有找错位置。那么怎么解决断点断不下来的问题呢。
其实也很简单,可以使用Fiddler去替换网页中的文件,嫌麻烦也可以使用浏览器的Overrides功能去映射本地文件。这些方法都可以,哪种方便用哪个就行。
链接: Fiddler使用

首先将该js文件保存到本地,然后使用Fiddler替换完文件。再重新刷新页面,就会发现断点已经生效了。
在这里插入图片描述
在这里已经拿到结果了。
a.data是密文数据。
在这里插入图片描述
Object(o.a)解密数据。
在这里插入图片描述

最后通过JSON.parse反序列化

扣代码

F11多步入几次就可以跟进解密的地方。
在这里插入图片描述
就是一个标准的AES加密,可以选择扣代码,也可以选择使用第三方库去还原环境。
代码比较简单,直接调用crypto-js库去还原了。

最后结果如下:
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值