안드로이드 환경에서 자바 리플렉션과 동적 로딩을 이용한 코드 은닉법

A Code Concealment Method using Java Reflection and Dynamic Loading in Android

초록

Unlike existing widely used bytecode-centric Android application code obfuscation methodology, our scheme in this paper makes encrypted file i.e. DEX file self-extracted arbitrary Android application. And then suggests a method regarding making the loader app to execute encrypted file's code after saving the file in arbitrary folder. Encrypted DEX file in the loader app includes original code and some of Manifest information to conceal event treatment information. Loader app's Manifest has original app's Manifest information except included information at encrypted DEX. Using our scheme, an attacker can make malicious code including obfuscated code to avoid anti-virus software at first. Secondly, Software developer can make an application with hidden main algorithm to protect copyright using suggestion technology. We implement prototype in Android 4.4.2(Kitkat) and check obfuscation capacity of malicious code at VirusTotal to show effectiveness.

키워드

Java reflectionMalwareMalicious codeDESData encryption standardBytecodeCopyright protectionObfuscationIntentIntent filterClass encryptionDynamic keysAndroidManifest
제목
안드로이드 환경에서 자바 리플렉션과 동적 로딩을 이용한 코드 은닉법
제목 (타언어)
A Code Concealment Method using Java Reflection and Dynamic Loading in Android
저자
김지윤고남현박용수
DOI
10.13089/JKIISC.2015.25.1.17
발행일
2015-02
저널명
정보보호학회논문지
25
1
페이지
17 ~ 30