During Google Summer of Code 2015, in the Honeynet Project open-source org, Valerio Costamagna and Cong Zheng (mentor) worked on ARTDroid, an easy-to-use framework for hooking virtual-method under latest Android runtime (ART).
Introduction
We propose ARTDroid, a framework which allows to analyze Android apps without modifications to both Android framework and apps. The core technology is the library injection and virtual methods hooking by vtable tampering after getting the root privilege.
Beta version is out and the install instructions are available at the project webpage. The new features are:
Prevent some emulator evasion techniques Added visualization of analysis results Automated app installation and execution Displaying analysis information about the APK Static pre-check extracts the app’s registered Intents The following figures show the new visualization added to the beta version.
Image to the left is a PoC for classifying malwares and their similarity.
The Android application sandbox is now ready for an alpha release. Details on how to get DroidBox running are available at the project webpage.
At the moment, the following actions are logged during runtime:
File read and write operations Cryptography API activity Opened network connections Outgoing network traffic Information leaks through the following sinks: network, file, sms Attempts to send SMS Phone calls that have been made An analysis output looks like the following sample report:
One of the very first Android malwares, Geinimi has been analyzed in the application sandbox DroidBox that is currently being developed. The project is part of GSoC 2011 in collaboration with Honeynet and as a master thesis. The Geinimi application uses DES encryption, and it’s possible to uncrypt statically the content, see picture below.
But it’s very easy to do that because the key is not well hidden, so an approach by using dynamic analysis will be more interesting with complex samples.