Mobile devices are now essential components in our daily lives, which replace computers for a
majority of daily tasks. However, although they have brought convenience, there is a high risk of
personal information leakage. Especially, Android applications are being targeted by many malicious
attacks. Even though the static analysis tools have been developed to detect such malicious attacks, the
traditional methods cannot properly analyze data flow when reflection is implemented in the code.
In this paper, we propose a method which improve detection of the personal information leakage
on reflection. We first boost the input application by using collected records of reflection gained from
constant propagation model framework. We then insert the boosted input application in the static
analysis tools. We conduct experiments on the test applications and on real-world applications in Google
Play Store. The experimental results show that our method is better able to detect information leakage
on reflection calls.
모바일 기기는 이제 우리 생활에서 필수 불가결한 요소로 존재하며, 컴퓨터가 수행했던 대부분의 일을 대신 처리하고 있다. 이렇듯 모바일 기기는 우리 생활에 편리함을 가져다 주었지만, 개인 정보 유출의 위험도 같이 수반한다. 특히, 안드로이드 앱은 많은 악성 공격의 표적이 되고 있다. 이와 같은 악성 공격을 탐지하려는 정적 분석 도구들이 개발되고 있지만, 기존의 방법으로는 리플렉션 호출을 통한 데이터 흐름을 적절히 탐지하지 못한다.
본 논문에서는, 리플렉션을 통한 개인 정보 유출을 탐지하는 방법을 제안한다. 우선 상수 전달 언어 모델을 통해 리플렉션 호출을 가진 분석 대상 애플리케이션을 개량한 후, 이 앱을 정적 분석 도구에 입력하여 결과를 도출한다. 테스트 앱 및 구글 플레이 스토어에서 판매 중인 앱들을 대상으로한 실험을 통해, 제안하는 방법이 리플렉션 호출을 통한 데이터 흐름을 적절히 탐지함을 알 수 있다.