appleiOS Manual

The hooking flow for iOS applications is structurally different from Android due to the .ipa package filesystem and Apple's strict code signing requirements. The process is divided into organization and updating/injection.

First step: Download the file sent by the MAD technical team and extract it on your macOS system. This package contains the MadconfigGen tool and the static/dynamic libraries required.

Second step: Run the injection command in the terminal, pointing to the unsigned .ipa file or one signed with a development certificate.

Environment variables (optional, can be used instead of flags):

 CONFIGFILE=<path> Same as -c option
 LICENSEKEY=<key> Same as -l option
 IPA_PATH=<path> Same as -i option
 VERBOSE=yes   Same as -v option (values: yes, true, 1)

Examples of flags that can be used:

madprotector@main MAD_CLI_arm64_x86_64_signed % ./MadconfigGen
Usage: 
  -c <config file path>   Configuration file path
  -l <license key>        License key
  -i <ipa path>           Ipa injection path
  -h                      Print this help message

Third step: After successful execution, the tool will generate a file with the extension .ipa.patched (Example: myapp.ipa.patched). This file contains the app binary modified with the injected RASP protections.

Fourth step: Rename the file by removing the .patched suffix to .ipa and submit it to the Apple Store.

Structure of the config.plist file

Complete and functional example:

Last updated