声明
本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除!
lianxiwx a15018601872
1.逆向过程
1.1.token
token就比较简单,补一下screen,navigator,location,addEventListener,收集一些真实轨迹就行了。调用方法完成加密。
2.mtgsig
有人问我补环境怎么学的,我也忘了怎么学的,我记得我遇到的第一个补环境是同花顺吧,然后是瑞数4,接着就看着文档自己摸索,结合开源框架自己慢慢学的。第一次补环境起到质变,就是补的mtgsig。然后就开启基本都会补一点了。
这是我的加密代码解法思路。补环境就不说了,实在不行用jstools,我也研究过jstools很久了,对补环境学习挺有用。算法我也教不了,因为我已经都是菜狗。看到日志密密麻麻就烦。
function getUrl(){
method="GET"
data={
"shopId": "l29sKPkmZC8WxQmg",
"cityId": "1368",
"shopType": 10,
"order": "all",
'summaryName':undefined
}
t="路径"
var r = function(t) {
var e = [];
for (var i in t)
e.push(i + "=" + t[i]);
return e.join("&")
}(data)
s = location.protocol + t + "?" + r;
token=reload(s)
originUrl=decodeURIComponent(###################/${data['shopId']}
)
url=路径?shopId=${data['shopId']}&cityId=${data['cityId']}&shopType=${data['shopType']}&order=${data['order']}&_token=${token}&platform=1&partner=150&optimusCode=10&originUrl=${originUrl}&yodaReady=h5&csecplatform=4&csecversion=2.4.0
,
data2={
"url": url,
"method": method,
"headers": {
"Accept": "application/json, text/javascript, /; q=0.01",
"X-Requested-With": "XMLHttpRequest"
},
"openArg": [
"GET",
url,
true,
null,
null
],
"signType": 2,
"oriUrl": #################?shopId=${data['shopId']}&cityId=${data['cityId']}&shopType=${data['shopType']}&order=${data['order']}&_token=${token}&platform=1&partner=150&optimusCode=10&originUrl=${originUrl}
,
"SCaApp": false,
"openHookedCount": 1,
"isRaptor": false,
"sendHookedCount": 1,
"data": null
}
}
3.结果
1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。
仅用于学习交流