windows端直接安装frida-tools:
pip install frida-tools
手机端需adb push进fridaserver
设备配置前注意:
1.安卓系统是低版本,frida也尽量使用低版本
推荐使用高版本如安卓7.1 8.1及以上的安卓版本
2.fridaserver版本要与python下的frida库的版本一致
3.不同的平台用不同的fridaserver
模拟器中一般用x86的
可以用如下命令来判断模拟器的版本:
我这里用的雷电模拟器的版本位x86的。
nex x4
x5 x5x 32位的fridaserver
x6p(6p开始用64位的fridayserver)
谷歌的pixel手机用的64位cpu,这里也要用arm64的fridaserver
总结:一般真机中用带arm的,模拟器中用x86的。
平台用错了对应的fridaserver版本的话,则fridaserver会启动不了。
4.不要与xpose模块装在一起,
设备所需权限
1.root权限
2.ro.debuggable = 1
将fridaserver push 进模拟器中
修改fridaserver权限,并运行fridaserver、
新开一个cmd窗口,转发端口
注入.js
setImmediate(function(){ // 防止一些超时
Java.perform(function(){
// 调用类
var utils = Java.use("类名");
// 用implementation 来hook类方法
utils.该类下的方法名.implementation = function(a, b){
// 这个方法hook掉了原来的方法,若要让原方法正常执行,则需要用this.方法名
// a = 123;
// b = 456;
var retval = this.getCalc(a, b);
console.log(a, b, retval);
//return retval;
return retval;
}
});
});
注入js命令
frida -U app包名 -l 注入.js