1.搜索商品,进行抓个包
2.多次抓包分析得出,只有请求头api_sign是动态的
3.打开jadx搜索api_sign,
4.经过frida调试确定是这里,然后经过静态分析,得出调用的是so层的函数
5.用ida打开so看见这个函数很可疑
6.用frida进行hook
function bb(){
Interceptor.attach(Module.findExportByName("libkeyinfo.so", 'getByteHash'), {
onEnter: function (args) {
//经过确认参数是string的,直接打印
console.log('参数3', args[2].readCString());
console.log('参数4', args[3]);
console.log('参数5', args[4]);
},
onLeave: function (retval) {
console.log('getByteHash returned:', retval.readCString());
}
});
}
7.frida hook之后会发现返回值就是api_sign
8.至此后面不用说了,用python进行复现就好了
9.有喜欢逆向的朋友欢迎加我,备注进群,一起学习交流逆向