js加密——企名片

1. url: https://www.qimingpian.cn/finosda/project/pinvestment

2. target:

 

 3. 简单分析

3.1 打开调试窗口,刷新页面,看看都有哪些请求,哪些跟所需数据有关。于是找到了如下:

 

 

 

 两个ajax请求,他们都有一个加密的参数 “encrypt_data”,初步判断,这两个,或者其中一个就是我们需要的数据。为什么?猜的。

3.2 用这个加密的参数去全局搜索,在一个名为“app****.js”的js文件中找到了几个匹配的地方。

 

 在附近打上断点看看。

3.3 看到这里,有点像我想要找的东西,把它拿出来到console中执行一下:

 

 果然,就是它。下面,我们就看看它的解密过程。

3.4 看看它用到了哪些函数:

 

 

 

 3.5 将所需js函数提取出来,稍微处理下,保存到本地js文件中,如下:

一共就三个js函数:

 

 3.6 使用execjs执行一下,代码:

import execjs
import json

encrypt_data = '**'

with open('test.js') as f:
    js_encrypt = f.read()

ctx = execjs.compile(js_encrypt)
result = ctx.call('result',encrypt_data)
print(result)
json_data = json.loads(result)
print(json_data)

结果:

 

 其实js加密的网站,不像我以前想象中那么复杂。但凡加密,不管从服务器端怎么传输过来,客户端想要能够正常浏览,必定会把解密过程也给传过来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值