iOS testing shares Frida with Android but the platform model, file layout, and toolchain differ enough to trip Android testers. This module walks through iOS-specific setup, keychain inspection, class-dump of Objective-C runtime, and SSL pinning bypass on an iPhone.
Device options in 2026
- Jailbroken physical device β palera1n for A9βA11 chips on iOS 15/16, checkra1n for older. Newer hardware (A12+) has no reliable public jailbreak as of 2026
- Corellium β commercial virtual iOS service. Runs real iOS in a browser-accessible VM. Used by many mobile pentest firms because it sidesteps the jailbreak availability problem
- App sandbox testing β without jailbreak, you can still do limited testing via re-signing IPAs with your developer certificate and using iOS’s standard developer tools
Lab prerequisites
- Jailbroken iPhone (or Corellium VM) running a supported iOS
- OpenSSH + Dropbear installed via Sileo/Zebra package manager
- Frida server installed on device (via Sileo repo
build.frida.re) - Frida + Objection on host via pip
- Burp Suite with CA certificate installed on device and trusted in Settings β About β Certificate Trust Settings
- USB or Wi-Fi connectivity to SSH into the device
Pulling the IPA
App Store apps are encrypted (FairPlay). To decompile, you need the decrypted binary:
# Install frida-ios-dump on host
git clone https://github.com/AloneMonkey/frida-ios-dump
cd frida-ios-dump && pip install -r requirements.txt
# Dump decrypted IPA from running device
./dump.py -l # list installed apps
./dump.py com.target.app # dump it
# Output: com.target.app.ipa in current dir, fully decrypted
Static inspection
An IPA is a ZIP. Unzip to find Payload/TargetApp.app/TargetApp β the Mach-O binary.
Continue reading with Basic tier (βΉ499/month)
You've read 38% of this module. Unlock the remaining deep-dive, quiz, and every other Intermediate module.