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

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, 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.