frida学习之旅——输出对象类型参数

frida学习之旅

1、安装python frida
pip install frida

2、手机安装frida-server服务端
下载地址为:http://build.frida.re/frida-snapshot/android/arm/bin/frida-server。
下载手机对应cpu的版本,我这下载的是:frida-server-12.6.13-android-arm64
push到手机进行安装配置

adb push frida-server-12.6.13-android-arm64 /data/local/tmp/

打开新的cmd窗口,然后赋予权限
adb shell
su
cd /data/local/tmp/
chmod 777 frida-server-12.6.13-android-arm64

运行frida-server
cd /data/local/tmp/
./frida-server-12.6.13-android-arm64

PyCharm编写脚本:

if(Java.available) {
    Java.perform(function(){
         var JSONObject = Java.use("com.alibaba.fastjson.JSONObject");
         var RequestConfigclass= Java.use("com.pay.android.model.Request");

    
         var Request= Java.use('com.pay.android.network.pb.Request');
         Request.requestData.overload('com.pay.android.network.model.Req', 'com.pay.android.network.model.ReqConfig').implementation=function (arg1,arg2) {
              var ret = this.requestData.apply(this, arguments);

              //参数为对象则利用json工具类格式化
              send("\nin: "+ JSONObject.toJSON(arg2)); 
              send("\nout: "+ ret.toString()); 
              return ret;
          }
    });
}

PyCharm终端执行
frida -U -f 应用包名 -l hook.js
使用 frida -R -f 则需要先开启转发端口 adb forward tcp:27042 tcp:27042

你可能感兴趣的:(frida学习之旅——输出对象类型参数)