
Configure Kali Linux on Windows using Windows Subsystem for Linux, enabling the feature, installing Kali from the Microsoft Store, and setting the default WSL version.
If Genymotion put extra load on your system, then try installing NOX-Player which has same working functionality but in a much lighter package.
I personally use NOX-Player on daily basis, but Genymotion is the popular one because of its SAAS working model.
Trace Android history from a 2003 camera project to a Google funded smartphone OS, through the Open Handset Alliance and dessert-named versions up to Android 12.
Explore the Android framework architecture from the Linux kernel through Binder IPC to core libraries, Android runtime, and app framework, covering surface manager and media framework.
Explore the Android file structure, including APEX modules, the APKs folder, app and data directories, system and vendor folders, with debugging using ADB, bug reports, and storage layouts.
Explore android application architecture, including activities, content providers, services, and broadcast receivers, and understand manifest, dex, resources, and layouts in an apk, plus normal and dangerous permissions and their groups.
Lets get stated with android application reverse engineering. Application are available in ZIP file to download
Learn how to decompile android applications with apktool, inspect smiley code and Java code, and recompile after changes using Kali Linux commands and standard folder paths.
Use Android Studio to perform static analysis by decompiling dex files, converting Dalvik bytecode to a jar, and inspecting the Java code, manifest, and resources.
Identify a hard coding issue in an Android app by locating a vendor secret key used as a license key, and show access granted when the input matches.
Explores insecure data storage by writing credentials to a temporary file in the app's data directory, exposing plaintext, and suggests encrypting or encoding (base64 or hex) the values.
Examine improper input validation in web view scenarios and how the file method can access sensitive information or files on Android devices through storage paths.
demonstrates bypassing a four-digit pin to access private notes by exploiting an exported content provider via adb and the content resolver, revealing data stored in shared preferences or databases.
Learn how a vendor key is hardcoded inside the Diva Genie library, and how input is passed to the library via JNI to trigger access.
Explore how input fuzzing exposes improper input validation in Android apps by sending long inputs beyond 31 characters, causing app crashes when exception handling is insufficient.
This lecture guides Android security assessment by locating hardcoded values in the manifest and main activity and extracting the hardcoded key from the asset database named data escalate.
Some additional files are also available from pentester lab to try your skills.
Follow Below Commands
# Create Certificate
1 - Download Burp certificate to .DER e.g cacert.der
2 - openssl x509 -inform DER -in cacert.der -out cacert.pem // Convert .DER (Distinguished Encoding Rule) encoded file into .PEM (Privacy Enhanced Mail) encoded file.
3 - openssl x509 -subject_hash_old -in cacert.pem |head -1 // Calculate MD5 hash for cacert.pem file and **head -1** will only print 1st list
4 - mv cacert.pem {hash}.0 // rename file with hash output of last command
# Setup Certificate
1 - adb root // Get Root access with ADB. Don't need to execute this command if ADB is configured to Root by-default
2 - adb remount // Remount partitions to Read-Write. if a reboot is required, -R will will automatically reboot the device.
3 - adb push {cert}.0 /system/etc/security/cacerts/ // Upload Certificate file to Android Certificate Store Directory.
4 - adb shell chmod 644 /system/etc/security/cacerts/{cert}.0 // Grant Read-Write Permission to Root Owner and Read Permission to other users and groups.
5 - adb reboot // Reboot Android Device to update Certificate Store.
Clone and run the AndroBug framework for static analysis of an Android app, generate a report, and identify issues in the manifest, webview, JavaScript execution, and adb backup exposure.
Required Material
Frida Server :-: https://github.com/frida/frida/releases
Magisk :-: https://magiskmanager.com
SSL Pinning Bypass Script :-: https://codeshare.frida.re/@pcipolloni/universal-android-ssl-pinning-bypass-with-frida/
This whole course is divided into 6 Sections which covers different necessary portions for Android Application Security and they goes like this :-:
Lab Setup
Introduction to Android
Static Analysis tools for Android Applications
Getting Started with DIVA-Beta Application
Pentester Lab Applications
Dynamic and Automated Analysis
Dynamic Instrumentation with Frida and Objection
This course require few things from learner, such as :-:
Some hands on experience with any linux operating system, best for Kali Linux users.
Basic code level understanding of JAVA language.
Minimum System requirements for this course :-:
CPU -- i5 7th Gen
RAM -- 12 GB
Storage -- 250 GB SSD
Who this course is for:
All web application security analyst.
All those security enthusiast.
All those newbies into hacking.
All those API security analyst.
A total beginner, with a curious mind and wants to be an app developer
Anyone who wants to become an Android Developer
Penetration testers who want to do a Penetration Testing against Android mobile phones.
Application developers who want to write secure mobile applications.
Anyone who want to protect themselves against mobile attacks.
Programmers who are interested in building Android apps
Technical or non-technical entrepreneurs who want to start mobile app business
Anyone who wants to create Android Applications
Those who want to develop an Android Hacking
This course will give you a beginner to intermediate level knowledge in android application security. Audio and Video quality might not be the best, but these are the thing you need to know to get started in Android application security.