/apk2url

A tool to quickly extract IP and URL endpoints from APKs by disassembling and decompiling

Primary LanguageShellMIT LicenseMIT

apk2url

apk2url easily extracts URL and IP endpoints from an APK file to a .txt output. This is suitable for information gathering by red team, penetration testers and developers to quickly identify endpoints associated with an application.

Note: apk2url disassembles to Smali and performs Java decompilation to identify URLs and IPs.

Inspired by diggy, apk2url is rewritten and upgraded with IP support, stronger regex, filtering and Jadx decompilation.

Usage

./apk2url.sh /path/to/apk/file.apk

You can also install directly for easy access by running ./install.sh.
After that you can run apk2url anywhere:

apk2url /path/to/apk/file.apk

By default there are 2 output files in the "endpoints" directory:

  • <apkname>_endpoints.txt - Contains endpoints with url paths, has duplicates
  • <apkname>_uniqurls.txt - Contains unique endpoints

By default, the program does not log the APK file path where endpoints are discovered.
To enable logging, run as follows:

apk2url /path/to/apk/file.apk log

*Tested on Kali 2023.2 and Ubuntu 22.04

Dependencies

Use apt for easy installation of these tools:

  • Apktool
  • Jadx

Demo Run

image

Disclaimer

This tool is for educational and testing purposes only. Do not use it to exploit the vulnerability on any system that you do not own or have permission to test. The authors of this script are not responsible for any misuse or damage caused by its use.