SBIR/STTR Award attributes
This proposal aims to provide a general framework for cross-layer instrumentation of mobile applications for Android platforms. Our approach uses static and dynamic binary analysis to identify known functional code blocks and libraries in mobile applications. For each Android platform, we have created a list of mobile Application Programming Interfaces (APIs) method calls and external shared library calls. Our approach is to perform static and dynamic analysis to identify Android application and Dalvik system components, including ARM native libraries and code. We use the results of this analysis to fully explore the application bytecode and libraries and expose all available instrumentation points at three different program layers: Android bytecode, Android APIs directly and through their intermediate representation, native code and libraries. Our approach performs the instrumentation without access to the mobile application source code and without altering the functionality and data flows of the target application.