1. Java.use
- Method가 다음과 같이 static으로 되어 있을 경우 프로그램 실행 시 메모리에 올라오기 때문에 instance가 필요없다. 이럴 경우 java.use를 이용한다.
- 위 클래스의 chall01 변수 값을 1로 변경하는 hooking code
1 2 3 4 5 | Java.perform(function() { var Activity1 = Java.use("uk.rossmarks.fridalab.challenge_01"); Activity1.chall01.value=1; }); | cs |
2. Java.choose
- Method가 static이 아닐 경우 java.choose를 통해 instance를 이용해야 한다.
- MainActivity 클래스의 chall02 메서드를 호출하는 hooking code
1 2 3 4 5 6 7 8 9 10 11 12 13 | Java.perform(function() { var main; Java.choose("uk.rossmarks.fridalab.MainActivity", { onMatch:function(instance){ main=instance; main.chall02(); }, onComplete:function(){ } }); }); | cs |
'Hacking > Mobile' 카테고리의 다른 글
IOS hooking code (0) | 2020.05.29 |
---|---|
Fridalab Writeup (0) | 2020.03.30 |
INSTALL_FAILED_OLDER_SDK (0) | 2020.03.05 |
IOS Pinning bypass (0) | 2020.03.04 |
메모리 내 중요정보 평문노출 (0) | 2020.02.10 |