Skip to content

muellerberndt/apkx

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
April 23, 2017 18:42
April 27, 2017 12:55
April 27, 2017 12:47
April 23, 2017 16:01
April 23, 2017 18:42

apkx - Android APK Decompilation for the Lazy

A Python wrapper to popular free dex converters and Java decompilers. Extracts Java source code directly from the APK. Useful for experimenting with different converters/decompilers without having to worry about classpath settings and command line args.

Installation

$ git clone https://github.com/b-mueller/apkx
$ cd apkx
$ sudo ./install.sh

Notes:

  • JRE needs to be installed and in PATH
  • enjarify requires Python 3

Usage

Pass the APK filename on the command line:

$ apkx HelloWorld.apk 
Extracting HelloWord.apk to HelloWord
Converting: classes.dex -> classes.jar (dex2jar)
dex2jar HelloWord/classes.dex -> HelloWord/classes.jar
Decompiling to HelloWord/src (cfr)

The default combination of converter and decompiler is dex2jar and cfr. Use the -c and -d flags to change this. E.g.:

$ apkx -c enjarify -d procyon HelloWorld.apk

To get help, run:

$ apkx -h

Tools

This script integrates the following tools:

About

This script accompanies the OWASP Mobile Security Testing Guide. For further instructions and usage examples, see also: