In my last article(Android Application Penetration Testing Part 1) we had look at the basic architecture of the Android device. Now Let’s collect some Android Application Pentesting tools and build a setup for hacking:
There are many tools for an Android application penetration test, But which tools are used for which purpose and which details we can extract from it is the most important thing.
We can also use a set of all tools built into some framework. They all are available as open source
Appuse, Appie, Santoku, Pentestbox, MobSF, etc.
Also, we recommend you take the best Android Hacking and Penetration Testing Course online to enhance your Android hacking &Pentesting skills.
Let’s start with Appuse
AppUse is a VM (Virtual Machine) developed by AppSec Labs. It is a unique platform for mobile application security testing in the Android environment and includes exclusive custom-made tools created by AppSec Labs. The free version is sufficient
https://appsec-labs.com/appuse-pro/ Appuse dashboard-
Emulator
It is built in the Appuse framework or else an external rooted mobile device can be attached and tested. Launching emulator will give you a virtual device.
Root Device: It will root the emulator device and give sudo access by using superuser.apk
Open ADB shell: It will open the ADB shell
The mobile device can be connected to App use if you don’t want to use an emulator
Step1: On a mobile device enable USB debugging and connect to the machine
Step2: adb devices will show you the attached devices
Android Application Pentesting Tools:
Some basic tools for pentesting which will be useful in many test cases are already there for you. You just have to click on the tool
- Burp Suite Burp Suite is the leading software for web security testing. It is a proxy tool that will help to intercept requestss between client and server.
- Wireshark is a network traffic capture tool that will give a clear picture of packets on the network.
- IDA – IDA is a Windows, Linux, or Mac OS X-hosted multi-processor disassembler and debugger
- Eclipse – Eclipse provides IDEs and platforms for nearly every language and architecture
- NetBeans – It is a free source used to develop desktop, mobile, and web applications With Java, JavaScript, HTML5, PHP, C/C++ etc.
- Firefox browser– because its hacker’s browser 😉
- SQLite browser – It uses to see database files
- Nmap – network scanner we can install it as it is an open source
Reversing of .apk file
For reverse engineering and many Pentest tools are already built in App use.
Tools:
Click on load APK if you want to load .apk file which is already installed in the device/emulator. Else you can select the .apk file from Local i.e. from the base machine. Google Play option is also available.
- Mainly we will be decoding an APK file for that we need to run apktool d filename.apk. After running that, it will create a folder in the same directory with decompiled files in it. Or another way, in the app, use it all linked up with the dashboard which we can use directly.
Concept
The apk file is a zip file. The zip file consists of XML and other Android application resources. Apktools decodes the resource files and converts the Android bytecode into assembly-level small files.
Dex2jar converts the dex files into java bytecode files archived inside the jar file. JD GUI and Luyten decompile Java byte code to Java source code file.
- After installing or selecting the .apk file, we can View the Android manifest file by clicking view Manifest.
Dalvik Virtual Machine does not use Java bytecode. Instead, it uses its own file format called dex (Dalvik Executable Format). It holds the definition of multiple classes and relative data.
- Smali /Baksmali is an assembler/disassembler for dex file format respectively.
- Save Java sources – The dex2jar tool is used to decode the .dex file to a .jar file
- JD-GUI is a standalone graphical utility that displays Java source codes of “.class” files.
Drozer
It is not in built-in app use you can install with the guidance of the below link
https://labs.mwrinfosecurity.com/assets/BlogFiles/mwri-drozer-user-guide-2015-03-23.pdf
Drozer allows you to assume the role of an Android app and interact with other apps. It can do anything that an installed application can do, such as make use of Android’s Inter-Process Communication (IPC) mechanism and interact with the underlying operating system.
Android Application Penetration Testing Part 3
Reference
https://appsec-labs.com/
https://labs.mwrinfosecurity.com/tools/drozer/
Also Read
- Penetration testing Android Application checklist
- Penetration testing with your WordPress website
- Advanced ATM penetration testing methods
- Web Server Penetration Testing Checklist
You can follow us on Linkedin, Twitter, Facebook for daily Cybersecurity updates also you can take the Best Cybersecurity courses online to keep your self-updated.