郑州网站建设大华伟业,抖抈app下载国际版,备案的网站 ,能拿来做仿站吗,长宁网站推广公司一、数据接口分析
主页地址#xff1a;某查查
1、抓包
通过抓包可以发现数据接口是api/people/getRelatCompany
2、判断是否有加密参数 请求参数是否加密#xff1f; 无 请求头是否加密#xff1f; 通过查看“标头”可以发现#xff0c;请求头中有一个key和value都是…一、数据接口分析
主页地址某查查
1、抓包
通过抓包可以发现数据接口是api/people/getRelatCompany
2、判断是否有加密参数 请求参数是否加密 无 请求头是否加密 通过查看“标头”可以发现请求头中有一个key和value都是密文的请求头和一个X-Pid 响应是否加密 无 cookie是否加密 无
二、加密位置定位
1、密文请求头
1看启动器
查看启动器发现里面包含异步所以无法正确找到加密位置
2搜索关键字
因为请求头key也是密文所以无法搜索key值但是因为是请求头加密所以可以搜索关键字headers[。通过搜索可以发现有一处设置请求头的位置所以怀疑此处就是加密位置。 在此处打断点再次获取数据发现可以断住并且此处key值与value值都是密文所以此处就是加密位置而且i和l的生成就在上方。
2、X-Pid
1搜索关键字
通过搜索关键字x-pid可以发现网站是从window中取出来的。 所以我们可以通过搜索window.pid可以发现是写在静态页面中的同时还有一个tid是加密请求头中用到的。
三、扣js代码
将定位到的加密位置的代码扣出缺啥补啥即可。 在扣js代码时可以发现o.default中使用的是HmacSHA系列算法所以我们可以尝试一下判断是否是标准算法通过控制台的输出可以发现o.default就是标准的HmacSHA算法所以此处我们可以使用标准模块来加密。 JavaScript源代码
const CryptoJS require(crypto-js)
var a_o_default function (e, t) {return CryptoJS.HmacSHA512(e, t).toString()
};var a_a_default function () {var codes {0: W,1: l,2: k,3: B,4: Q,5: g,6: f,7: i,8: i,9: r,10: v,11: 6,12: A,13: K,14: N,15: k,16: 4,17: L,18: 1,19: 8
}for (var e (arguments.length 0 void 0 ! arguments[0] ? arguments[0] : /).toLowerCase(), t e e, n , i 0; i t.length; i) {var a t[i].charCodeAt() % 20;n codes[a]}return n
};var a_default function () {var e arguments.length 1 void 0 ! arguments[1] ? arguments[1] : {}, t (arguments.length 0 void 0 ! arguments[0] ? arguments[0] : /).toLowerCase(), n JSON.stringify(e).toLowerCase();return a_o_default(t n, a_a_default(t)).toLowerCase().substr(8, 20)
};var r_default function () {var e arguments.length 1 void 0 ! arguments[1] ? arguments[1] : {}, t arguments.length 2 void 0 ! arguments[2] ? arguments[2] : , n (arguments.length 0 void 0 ! arguments[0] ? arguments[0] : /).toLowerCase(), i JSON.stringify(e).toLowerCase();return a_o_default(n pathString i t, a_a_default(n))
};function get_headers(tid) {var t /api/people/getrelatcompany?keynopac1d468055811d835c90bf67aa9c656pagesize10;var i a_default(t, undefined)var l r_default(t, undefined, tid);return {i:l}
}