산학협력 프로젝트 수행계획서

과 제 명

안드로이드 앱에 대한 난독화 및 역난독화 기법 연구

키워드 검색


협력기관명

엘에스웨어()

과제책임자

조성제 교수

참여인원


추진배경

난독화된 악성 앱은 알려져 있는 악성 앱 탐지 기법을 회피할 수 있어, 악성 앱 분석에 소요되는 시간과 비용을 크게 증가시킬 수 있음. 따라서 난독화된 악성 앱을 효율적으로 분석하는 기법 필요

한편, 저작권을 갖는 사유 앱(proprietary app)이나 closed source app의 경우에는 주요 영업 비밀이나 로직을 보호하기 위해 난독화 기법을 사용하기도 함. 이 경우, 어떠한 난독화 기법이 효과적인지 분석할 필요 있음.

오픈 소스를 기반으로 한 안드로이드 시장이 확장되면서 오픈 마켓에 난독화된 악성 안드로이드 앱이 배포되고 있음. 이 경우에는, 안드로이드 앱이 오픈 소스 SW(Open source SW, OSS) 라이선스를 준수하고 있는지 여부를 파악하기 위해서 난독화 영향을 분석할 필요가 있음.

목표 및 내용

안드로이드 앱에 적용할 수 있는 난독화 도구(obfuscator), 역난독화 도구(de-obfuscator)들의 효과에 대해 비교 분석

- R8 compiler (ProGuard), Obfuscapk 등의 난독화(obfuscation) 기법 효능 분석

- ReDex, DeGuard, Deoptfuscator 등의 역난독화(de-obfuscation) 기법 효능 분석

- 안드로이드 앱 저작권 보호에 효과적인 난독화 기법이나 도구에 대해 분석

Android ART를 활용한 정적 taint-analysis

- Android ART에서 사용하는 HIR(Hydrogen Intermediate Representation)을 활용한 정적taint-analysis를 통해 제어흐름 난독화 여부 탐지

- 제어흐름 난독화된 안드로이드 앱에 대하여 난독화 해소

(ex. 제어흐름 난독화에 사용된 변수의 선언 및 사용 부분을 제거)

최적의 임계값 탐색

- AUC-ROC Curve를 활용하여 제어흐름 난독화 여부를 판단하는 임계값 설정

- 최적의 임계값을 설정함으로써 오탐, 미탐 감소

난독화나 역난독화가 악성 앱 탐지나 악성 앱 패밀리 분류에 어떤 영향을 주는지도 분석

기대효과

역난독화 관련 연구에서는, 안드로이드 앱에 제어흐름 난독화 적용 여부를 탐지하고 해소할 수 있음.

- 안드로이드 앱에 적용된 난독화를 해소(역난독화)한다면 악성 안드로이드 앱을 분석하는 비용이 크게 감소됨

난독화 관련 연구에서는, 어떤 난독화 기법이 저작권 보호에 효과적인지 파악하여 저작권 보호를 향상시킬 수 있음.

머신러닝 기반 악성 앱 탐지나 악성 앱 패밀리 분류 연구에서는, 난독화 기법과의 적대적 예제(adversary example)와의 연관성을 분석할 수 있음.