品牌型网站制作公司,桂林漓江景区游玩攻略,中文网站模板,产品设计网址一、数据接口分析
主页地址#xff1a;某建筑市场平台
1、抓包
通过抓包可以发现数据接口是list
2、判断是否有加密参数
请求参数是否加密#xff1f; 无请求头是否加密#xff1f; 无响应是否加密#xff1f; 通过查看“响应”模块可以发现#xff0c;返回的响应是…一、数据接口分析
主页地址某建筑市场平台
1、抓包
通过抓包可以发现数据接口是list
2、判断是否有加密参数
请求参数是否加密 无请求头是否加密 无响应是否加密 通过查看“响应”模块可以发现返回的响应是加密数据 cookie是否加密 无
二、加密位置定位
1、看启动器
查看启动器发现里面包含异步所以无法正确找到加密位置
2、hook
因为响应加密数据一般都是json数据加密所以解密后会使用JSON.parse进行解密所以我们可以对JSON.parse进行hook。 hook代码段
var my_parse JSON.parse;
JSON.parse function (params) {debuggerconsole.log(json_parse params:,params);return my_parse(params);
};运行hook代码再次点击翻页发现有明文参数传入 往下执行可以发现是在响应拦截器中使用h方法对数据进行的解密
三、扣js代码
从定位到的解密位置进入h方法可以发现该网站使用的是标准AES解密并且key和iv均在此方法上方 所以我们可以直接使用标准AES模块对密文进行解密 源代码
var CryptoJS require(crypto-js)function h(t) {f CryptoJS.enc.Utf8.parse(jo8j9wGw%6HbxfFn)m CryptoJS.enc.Utf8.parse(0123456789ABCDEF);var e CryptoJS.enc.Hex.parse(t), n CryptoJS.enc.Base64.stringify(e), a CryptoJS.AES.decrypt(n, f, {iv: m,mode: CryptoJS.mode.CBC,padding: CryptoJS.pad.Pkcs7}), r a.toString(CryptoJS.enc.Utf8);return r.toString()
}