In this manuscript, we present our efforts towards a framework for exposing the functionality of a mobile application through a combination of static and dynamic program analysis that attempts to explore all available execution paths including libraries. We verified our approach by testing a large number of Android applications with our program to exhibit its functionality and viability. The framework allows complete automation of the execution process so that no user input is required. We also discuss how our static analysis program can be used to inform the execution of the dynamic analysis program. The program can serve as an extensible basis to fulfill other useful purposes such as symbolic execution, program verification, interactive debugger, and other approaches that require deep inspection of an Android application.
Proceedings Title: 2013 Proceedings of The Annual Reliability and Maintainability Symposium (RAMS'13)
Conference Dates: January 28-31, 2013
Conference Location: Orlando, FL
Conference Title: The Annual Reliability and Maintainability Symposium
Pub Type: Conferences
software reliability, dynamic analysis, execution coverage, Android