반응형

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
블로그 이미지

rootable

,
반응형

1. 문자열 내 한 문자씩 대문자로 변환

1
2
for i in range(0,len(string)):
    print(string[0:i]+string[i:i+1].upper()+string[i+1:len(string)])
cs



2. 해당 문자열로 가능한 모든 대소문자 배열 생성

1
2
3
for i in range(0,len(string)):
    for j in range(i,len(string)):
        print(string[0:i].upper()+string[i:j]+string[j:j+1].upper()+string[j+1:len(string)])
cs



반응형
블로그 이미지

rootable

,
반응형
아래는 8자리 숫자형 리스트 파일를 생성하는 파이썬 코드이다.

길이가 길어지던지, 문자열이 포함된 리스트를 생성할 때도 코드를 조금만 변형하면 생성할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
length=8
character="0123456789"
 
temp_list = [0 for x in range(0,length)]
crack_list=[]
 
text = open('list.txt','w')
 
for i in range(0,pow(10,8)):
    stringGen="".join([character[x] for x in temp_list])
    text.write(stringGen+"\n")
 
    temp_list[-1]+=1
 
    for x in range(length-1,0,-1):
        if temp_list[x] == len(character):
            temp_list[x-1]+=1
            temp_list[x]=0
 
 
text.close()
cs



반응형
블로그 이미지

rootable

,