| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- function frida_Java() {
- Java.perform(function () {
- //作为判断用
- if (Java.available) {
- //注入的逻辑代码
- // console.log("-------------开始筛选类名----------------");
- // Java.enumerateLoadedClasses({
- // onMatch: function (className) {
- // if (className.includes('beizi') && className.includes('fusion.b')) {
- // // console.log('类方法=>',className,'\t');
- // if(className == 'com.beizi.fusion.b.a$l'){
- // console.log('类名=>', className);
- // const hook = Java.use(className)
- // const methos = hook.class.getDeclaredMethods()
- // hook.$dispose;
- // methos.forEach(e => {
- // console.log('类方法=>',e,'\t');
- // });
- // }
- // }
- // },
- // onComplete: function () {
- // console.log('------------------结束筛选类名---------------');
- // }
- // })
- // base64 hook
- //打印堆栈
- // function printStacks() {
- // console.log(
- // Java.use("android.util.Log")
- // .getStackTraceString(
- // Java.use("java.lang.Throwable").$new()
- // )
- // );
- // }
- // //base64
- // var base64 = Java.use("android.util.Base64");
- // base64.encodeToString.overload('[B', 'int').implementation = function (a, b) {
- // console.log("base64.encodeToString: ", JSON.stringify(a),"\t");
- // var result = this.encodeToString(a, b);
- // console.log("base64.encodeToString result: ", result,"\t")
- // printStacks();
- // return result;
- // }
- // http hook
- const OkHttpClient = Java.use("okhttp3.OkHttpClient");
- OkHttpClient.newCall.implementation = function (request) {
- const result = this.newCall(request);
- console.log(request.toString(),'\t');
- return result
- };
-
- } else {
- //未能正常加载JAVA VM
- console.log("error");
- }
- });
- }
- setImmediate(frida_Java, 0);
|