모바일/보안

smali : 변조 시 삽입할 수 있는 간단한 코드

parktest0325 2019. 11. 26. 16:56

1. so 라이브러리 로드

const-string v0, "so_file_name"

 

invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V

 

2. 로그 출력

.local v0, "Log":Ljava/lang/String;

 

const-string v1,  "hack" //출력할 문자열 혹은 레지스터

 

invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

 

3. sleep

const-wide/16 v2, 0xa  // 0xa = 10

 

invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V

 

 

4. 토스트 메시지

const/4 v0, 0x1

 

const-string v1, "hacked by xxxxxx"

 

invoke-static {p0, v1, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

 

move-result-object v0

 

invoke-virtual {v0}, Landroid/widget/Toast;->show()V