首页
论坛
课程
招聘
[原创]某房产网 混淆js 分析与还原
2021-12-21 15:47 16183

[原创]某房产网 混淆js 分析与还原

2021-12-21 15:47
16183

仅供学习研究 。请勿用于非法用途,本人将不承担任何法律责任。

Chrome NetWork面板分析网络请求, 返回的数据是一个加密文本


前面有三组数字 + 加密数据
通过分析发现解密位置都是混淆代码


原本想把js抠下来,然后用python调用node.js进行解密的, 抠下来后发现node.js运行报错,而且试用”代理ip“,返回的数据是解密失败的,好像和ip有关系,所以使用了sekiro js rpc调用,今天没事具体研究了它的解密方式
图片描述

1、 混淆还原

图片描述
图片描述
所有变量名都是通过 _0x2e12方法进行计算得出, 那第一步手动把所有混淆替换掉
图片描述
图片描述

2、再替换掉一些固定的执行方法和参数

图片描述

3、 其实重点就在 deBase64 和 deBase64_cutStr 方法上, 通过这两个方法就大概看的差不多了

具体逻辑就是 通过返回的前三组数字和ip.split('.')进行运算, 然后计算ip的位数,传递给deBase64_cutStr方法进行subString后重新组合,重复3次,组合后就是一个base64加密了,可以直接解密
图片描述

 

通过3次deBase64_cutStr方法可以把base64参数内插入的随机值去除掉就能解密了
图片描述
所以解密代码没变, 如果请求数据的ip变了,这个代码是解密不出来的

python 还原

图片描述


【公告】看雪招聘大学实习生!看雪20年安全圈的口碑,助你快速成长!

最后于 2021-12-23 17:53 被wx_彩旗编辑 ,原因:
收藏
点赞1
打赏
分享
最新回复 (6)
雪    币: 5465
活跃值: 活跃值 (613)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
blanke 活跃值 2021-12-22 11:58
2
0
看起来像 sojson 或 jsjiami 处理的,这个直接ast还原很容易
雪    币: 3698
活跃值: 活跃值 (626)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kxzpy 活跃值 2021-12-24 09:05
3
0
不明觉厉,学习了,另外,求科普ast还原
雪    币: 9056
活跃值: 活跃值 (10786)
能力值: ( LV12,RANK:385 )
在线值:
发帖
回帖
粉丝
SSH山水画 活跃值 3 2021-12-24 09:30
4
1
https://www.charmcode.cn/article/2020-06-14_js_decryot
https://bbs.pediy.com/thread-264326.htm
可以参考下
雪    币: 221
活跃值: 活跃值 (36)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
清风ZH 活跃值 2021-12-24 10:37
5
0
不错。ast直接还原
雪    币: 11
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
wx_彩旗 活跃值 2021-12-24 14:06
6
0
SSH山水画 https://www.charmcode.cn/article/2020-06-14_js_decryot https://bbs.pediy.com/thread-264326.htm 可以参 ...

谢谢

最后于 2021-12-24 14:07 被wx_彩旗编辑 ,原因:
雪    币: 948
活跃值: 活跃值 (858)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
diypc 活跃值 2021-12-24 22:38
7
0
SSH山水画 https://www.charmcode.cn/article/2020-06-14_js_decryot https://bbs.pediy.com/thread-264326.htm 可以参 ...
两篇文章不错, 感谢分享
游客
登录 | 注册 方可回帖
返回