JS逆向-加密数据&算法解密&提交返回还原&扣代码调用&替换库模拟&堆栈定位&特征搜索
➢ JS逆向-算法解密-提交数据&返回数据
➢ JS逆向-算法解密-扣代码调用&替代库模拟
#分析方法
1、根据调用堆栈找加密前后定位
2、根据提交URL,参数名等搜索定位
#请求数据解密1:
分析:登录后看提交参数,找到param:及和调用堆栈文件对应
下数据加密后断点,追踪za(c.value, S),AES算法条件模式测试
#请求数据解密2:(单个使用扣代码模拟)
分析:登录后看调用堆栈下断点,找到hidetxtPassword
追踪hidetxtPassword数据处理,找到引用加密JS下载测试
#返回数据解密1:(单个使用扣代码模拟)
分析:
URL定位后断点,算法的方法就是webInstace.shell
下载JS文件,Webpack打包利用Node运行调用(借助AI)
#返回数据解密2:(多个使用替代库模拟) -----使用替代库进行模拟加密测试
分析:
npm init -y
npm install crypto-js
key来源:定义一个常量s,SHA1加密后获取一个值,并取前32位
AES解密:o是需要解密的字符串,r是key,mode是ECB,iv不需要