9.2 安卓逆向之—Frida持久化方案

9.2 安卓逆向之—Frida持久化方案

  摘要:

做逆向有一个必不可少的工具是Frida,动态调试工具。 官网地址:https://frida.re。他是很多端同样的动态hook 技术,可以输出日志,动态调试,后边还会讲到怎么操作界面等。方便逆向第一步的开发。可以支持安卓,苹果,桌面应用。这次主要讲的是怎么发布Frida脚本,比如我写好了一个脚本,我怎么给客户使用,活着别人打包直接使用。

一,一般的Frida 脚本的运行方式:

在手机端运行 frida_server ,然后执行脚本 //frida -U --no-pause -f com.xx -l test.js

com.xx 是app identifier, test.js 是脚本。

二,现有的方案介绍:

定制room

刷机room,改配置等. 

定制room, 或者各种方案,比较麻烦。

三, 我的方案

需要root 手机,但是可以直接打包app,就比较方便省事。

3.1 集成步骤

引入 fridainjector 库项目。比如在MainActivity 可以这样写。

public class MainActivity extends AppCompatActivity implements OnMessage {

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);



        try {

            // build an instance of FridaInjector providing binaries for arm/arm64/x86/x86_64 as needed

            // assets/frida-inject-12.8.2-android-arm64

            FridaInjector fridaInjector = new FridaInjector.Builder(this)

                    .withArm64Injector("frida-inject-12.8.2-android-arm64")

                    .build();



            // build an instance of FridaAgent

            FridaAgent fridaAgent = new FridaAgent.Builder(this)

                    .withAgentFromAssets("agent.js")

                    .withOnMessage(this)

                    .build();



            // register a custom interface

            fridaAgent.registerInterface("activityInterface", Interfaces.ActivityInterface.class);



            // inject whatsapp

            fridaInjector.inject(fridaAgent, "com.suning.mobile.ebuy", true);

        } catch (IOException e) {

            e.printStackTrace();

        }

    }



    @Override

    public void onMessage(String data) {

        try {

            JSONObject object = new JSONObject(data);

            Log.e("FridaAndroidInject", "whatsapp pid: " + object.getString("pid"));

        } catch (JSONException e) {

            e.printStackTrace();

        }

    }

}

onMesage 就是js 脚本发送过来的消息。

需要注意的事项:

1,有些js 方法可以不能执行。

2,日志很难打,最后onmess 多写信息。

下载地址

https://download.csdn.net/download/yijianxiangde100/86271926

你可能感兴趣的:(安卓逆向安全,android,java,开发语言,Frida)