某房产网 混淆js 分析与还原
本帖最后由 国窖1997 于 2021-12-23 17:46 编辑仅供学习研究 。请勿用于非法用途,本人将不承担任何法律责任。
Chrome NetWork面板分析网络请求, 返回的数据是一个加密文本
前面有三组数字 + 加密数据
通过分析发现解密位置都是混淆代码
原本想把js抠下来,然后用python调用node.js进行解密的, 抠下来后发现node.js运行报错,而且试用”代{过}{滤}理ip“,返回的数据是解密失败的,好像和ip有关系,所以使用了sekiro js rpc调用,今天没事具体研究了它的解密方式
https://static.52pojie.cn/static/image/hrline/line4.png
1、 混淆还原
所有变量名都是通过 _0x2e12方法进行计算得出, 那第一步手动把所有混淆替换掉
2、再替换掉一些固定的执行方法和参数
3、 其实重点就在 deBase64 和 deBase64_cutStr 方法上, 通过这两个方法就大概看的差不多了
具体逻辑就是 通过返回的前三组数字和ip.split('.')进行运算, 然后计算ip的位数,传递给deBase64_cutStr方法进行subString后重新组合,重复3次,组合后就是一个base64加密了,可以直接解密
通过3次deBase64_cutStr方法可以把base64参数内插入的随机值去除掉就能解密了
所以解密代码没变, 如果请求数据的ip变了,这个代码是解密不出来的
python 还原
首先祝贺楼主解密成功但是你这是手动解混淆 也没用到AST呀而且这个混淆也不叫 AST混淆:rggrg Rezalt 发表于 2021-12-22 13:31
首先祝贺楼主解密成功但是你这是手动解混淆 也没用到AST呀而且这个混淆也不叫 AST混淆
叫啥啊, 我百度了说是AST,我也不太懂这个. 学到了,真牛 。。。啥都AST 我给它起个名字 八格牙路是混蛋 米西米西是吃饭 AST是什么意思 跟AST没啥关系、、、 AST没关系 自宝义了个AST
页:
[1]
2