Androguard - reverse engineering of Android applications

"Androguard is mainly a tool written in python to play with:
  • Dex (Dalvik virtual machine) (.dex), and ODex (disassemble, decompilation)
  • APK (Android application) (.apk)
  • Android's binary xml (.xml)
Androguard is available for Linux/OSX/Windows (python powered)."


"Androguard has the following features:
  • Map and manipulate DEX/ODEX/APK format into full Python objects
  • Diassemble/Decompilation/Modification of DEX/ODEX/APK format
  • Access to the static analysis of the code (basic blocks, instructions, permissions (with database from http://www.android-permissions.org/) ...) and create your own static analysis tool
  • Analysis a bunch of android apps
  • Diffing of android applications
  • Measure the efficiency of obfuscators (proguard, ...)
  • Determine if your application has been pirated (plagiarism/similarities/rip-off indicator)
  • Check if an android application is present in a database (malwares, goodwares ?)
  • Open source database of android malware (this opensource database is done on my free time, of course my free time is limited, so if you want to help, you are welcome !)
  • Detection of ad/open source librairies (WIP)
  • Risk indicator of malicious application
  • Reverse engineering of applications (goodwares, malwares)
  • Transform Android's binary xml (like AndroidManifest.xml) into classic xml
  • Visualize your application with gephi (gexf format), or with cytoscape (xgmml format), or PNG/DOT output
  • Integration with external decompilers (JAD+dex2jar/DED/...)
  • ...
"