JNI HOOK (GetStringUTFChars, NewStringUTF, jnitrace)

홈 > 안드로이드 > 안드로이드
안드로이드

JNI HOOK (GetStringUTFChars, NewStringUTF, jnitrace)

3 쥬스 15 14290 1

아래 코드들에서 handlePointer.add(0x1234)에서 add 값은 ARM, ARM64 마다 JNI.h를 확인하시고 변경해주셔야합니당.

아래 코드는 ARM64 기준입니당.


아래 코드는 JNI에서 문자열만 확인하려고 만든거고..... 모든 JNI 함수들을 확인하고싶으시면 아래 jnitrae를 사용해보세요.(매우 편함)

https://github.com/chame1eon/jnitrace

jnitrace -l [libName] [패키지명]


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function hook_native_GetStringUTFChars() {
    var env = Java.vm.getEnv();
    var handlePointer = Memory.readPointer(env.handle);
    console.log("\t[*] env handle: " + handlePointer);
    var GetStringUTFChars = Memory.readPointer(handlePointer.add(0x548));
    console.log("\t[*] GetStringUTFChars addr: " + GetStringUTFChars);
    Interceptor.attach(GetStringUTFChars, {
        onEnter: function (args) {
            var str = "";
            var String = Java.use("java.lang.String");
            str = Java.cast(args[1], String);
            console.log("\t\t[*] GetStringUTFChars: " + str);
        }
    });
};
 
function hook_native_NewStringUTF() {
    var env = Java.vm.getEnv();
    var handlePointer = Memory.readPointer(env.handle);
    console.log("\t[*] env handle: " + handlePointer);
    var NewStringUTF = Memory.readPointer(handlePointer.add(0x538));
    console.log("\t[*] NewStringUTF addr: " + NewStringUTF);
    Interceptor.attach(NewStringUTF, {
        onEnter: function (args) {
            var str = "";
            var String = Java.use("java.lang.String");
            str = Java.cast(args[1], String);
 
            console.log("\t\t[*] NewStringUTF: " + str);
        }
    });
};
 
 
cs

15 Comments
M LIN 2019.11.29 22:27  
오우 감사합니다
9 단향 2019.11.30 19:54  
오옹.. 잘 사용하겠씁니다
6 Haclthesoul 2019.12.03 08:41  
감사합니다!
4 hekadan 2019.12.03 14:41  
감사합니다!!
6 arahan 2019.12.05 16:20  
너무 유용한것! 감사합니다~~~

Congratulation! You win the 4 축하드립니다! 당첨되셨어요~!

4 jmj877 2019.12.05 18:01  
감사합니다!
2 95grit 2019.12.06 23:41  
좋은 자료 감사합니다.
4 신사 2019.12.07 02:06  
좋은 정보 굿
2 username 2019.12.13 03:16  
좋은 정보
2 해키 2020.01.03 17:01  
감사합니다
4 알려주세요오 2020.02.05 09:33  
감사합니다아
2 루미에르 2020.03.20 11:23  
오우 찾고있던 내용이었는데 공유 감사해요!
7 래바리 2020.04.03 18:35  
감사합니다.
3 Linjjang 2020.04.22 17:05  
감사합니다
1 부엉이 2023.03.30 05:02  
감사합니다