-
-
未解决
新人在frida hook的时候的一个问题
-
发表于:
2020-11-5 09:06
2200
-
未解决 新人在frida hook的时候的一个问题
如下面这段代码
1 2 3 4 5 6 7 8 9 10 11 | public class EncryptUtil{
static {
System.loadLibrary( "encryptsec" );
}
public static String encryptString(String str ) {
return nativeEncryptString( str );
}
private static native String nativeEncryptString(String str );
}
|
如果自己对encryptString进行hook了,然后该方法体中返回值通过调用nativeEncryptString来进行返回,这样的写法就会导致程序崩溃
1 2 3 4 5 6 7 8 | Java.perform(function () {
var EncryptUtil = Java.use( "com.XXXX.utils.EncryptUtil" );
EncryptUtil.encryptString.implementation = function (a) {
send( "EncryptUtil.encryptString args[0]: " + a);
var result = this.nativeEncryptString(a);
return result;
}
});
|
但是直接对nativeEncryptString该方法进行hook 然会返回值再次调用nativeEncryptString来进行返回,这样的写法就不会导致程序崩溃
1 2 3 4 5 6 7 8 | Java.perform(function () {
var EncryptUtil = Java.use( "com.XXXX.utils.EncryptUtil" );
EncryptUtil.nativeEncryptString.implementation = function (a) {
send( "EncryptUtil.nativeEncryptString args[0]: " + a);
var result = this.nativeEncryptString(a);
return result;
}
});
|
具体原因不懂,能否有大佬告知下?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
最后于 2020-11-5 11:20
被初学逆向编辑
,原因: