Frida APK Patcher
Aug 16, 2024 Reverse Engineering androidiOSSecurityAuditThis tool allows you to patch APK files for Frida instrumentation using the Frida gadget. It injects the required libraries and smali code into the APK, re-signs it, and ensures the APK is ready to use with Frida for reverse engineering or penetration testing.
Features#
- Disassembles APK files using
apktool - Adds
INTERNETpermission and customnetwork_security_config.xmlif not already present - Injects Frida gadget libraries into the APK
- Modifies the APK’s smali code to load the Frida gadget
- Rebuilds, aligns, and signs the APK for use
- Compatible with Android versions that support APK Signature Schemes v1 and v2
Prerequisites#
Before using this tool, ensure the following tools are installed on your system:
aapt(Android Asset Packaging Tool)apktoolzipalignapksigner- Python 3.x
- Java Development Kit (JDK) for APK signing
Usage#
Step 1: Clone the Repository#
git clone https://github.com/sperixlabs/frida-apk-patcher.git
cd frida-apk-patcher
Step 2: Prepare Your APK#
Place the APK you want to patch in a known directory. Note the absolute path to the APK, as it will be needed during execution.
Step 3: Download Frida Gadget#
Run getlibs.sh to fetch the latest Frida Gadgets
bash getlibs.sh
Step 4: Run the Tool#
Run the script with the path to the APK you want to patch. Here’s the command:
python apk_builder.py --apk /path/to/your.apk
Example#
python apk_builder.py --apk /home/user/downloads/sample.apk
Step 5: Patched APK Output#
After the tool finishes running, it will output the patched APK file as your-apk-appmon.apk in the same directory where the original APK was located.
Options#
--apk: Absolute path to the APK you want to patch.
Output Files#
- The patched APK file will be created in the current working directory as
app_name-appmon.apk.
Usage#
- Over USB
frida -U Gadget -l [frida_script]
- Specific Device
frida Gadget -l [frida_script] -D [device_name]