Appmon is a framework which makes it easier to deploy iOS application with frida. It inserts a Frida gadget dylib into the iOS application, resigns it and install it onto a connected device. I found it helpful, because it is not necessary to use a jailbroken device for mobile application testing. However the installation is a little bit tricky. Check the documentation for more info.
These are the steps to install Appmon on Mac:
1. Clone Appmon from github. The appmon documentation can be found here.
2. Install pip
3. Install the required components
sudo -H pip install argparse frida flask termcolor dataset
if you get an error, try this one:
sudo -H pip install argparse frida flask termcolor dataset –upgrade –ignore-installed six
more info can be found here.
4. Install ios-deploy
brew install ios-deploy
5. Install Appmon
sudo sh build.sh
6. List developer identities. You have to create a mobileprovisioning profile in XCode.
Now you can install an app with injected frida:
python ipa_installer.py -ipa <PATH_TO_IPA>/<IPA_FILE_NAME>
This will open an LLDB prompt. In case you want to restart the application, you do not have to reinstall it. Use this one instead:
Open another terminal and enter the following. This will open Frida prompt.
frida -U Gadget
Open another terminal and enter the following. This will start collecting log which can be seen on http://127.0.0.1:5000/. You can also write your own scripts.
python appmon.py -a Gadget -p ios -s scripts/iOS