안드로이드 덱스클래스로더 실행흐름 변경을 통한 원본 앱 노출 방지 기법

Vol. 27, No. 6, pp. 1271-1280, 12월. 2017
10.13089/JKIISC.2017.27.6.1271, Full Text:
Keywords: Packer, DexClassLoader, Hooking, File System, Load, Substitution
Abstract

런타임 실행 압축 기술을 이용하는 안드로이드 패커(packer) 서비스는 덱스클래스로더(DexClassLoader)를 이용하여 원본 어리이션으로 환한다. 하지만 덱스클래스로더의 API 인터페이스는 로드할 덱스(Dalvik EXcutable)의 경로와 컴일 된 일의 경로를 입력 받으므로 원본이 일시스템에 드러나는 문제이 있다. 따라 서 해당 API를 패커 서비스에 그로 사용하는 것은 안하지 않다. 본 논문에서는 이 문제를 해결하기 해 덱스 클래스로더 API의 컴일 흐름과 로드 흐름을 변경하여 해결하다. 이 변경된 실행 흐름으로 인해 컴일 된 일 을 암호화하여 일 시스템에 두거나 메모리에만 존재하도록 하고, 이후 로드할 때 복호화 는 치환을 하여 원본 앱 환을 가능하게 한다. 제안하는 기법을 통해 원본 일이 일시스템에 노출되지 않음으로써 패커의 안정성이 올라갈 것이라 상한다.

Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from December 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
H. Jo, J. Choi, D. Ha, J. Shin and H. Oh, "A Hiding Original App Method by Altering Android DexClassLoader Execution Flow," Journal of The Korea Institute of Information Security and Cryptology, vol. 27, no. 6, pp. 1271-1280, 2017. DOI: 10.13089/JKIISC.2017.27.6.1271.

[ACM Style]
Honglae Jo, Joontae Choi, Dongsoo Ha, Jinseop Shin, and Heekuck Oh. 2017. A Hiding Original App Method by Altering Android DexClassLoader Execution Flow. Journal of The Korea Institute of Information Security and Cryptology, 27, 6, (2017), 1271-1280. DOI: 10.13089/JKIISC.2017.27.6.1271.