
Outil robuste basé sur Frida pour extraire les applications iOS déchiffrées au format .ipa depuis un appareil jailbreaké ; prend en charge l'App Store, les applications sideloadées et le système.
Ce projet s'inspire de frida-ios-dump.
Ayant récemment rencontré des problèmes avec cet outil, j'ai décidé de créer frida-ipa-extract avec une robustesse accrue et des ajouts pour répondre aux problèmes que nous rencontrons aujourd'hui.
Extrayez un .ipa déchiffré depuis un appareil iOS jailbreaké à l'aide de Frida. Prend en charge les applications installées via l'App Store, le sideload et les applications système.
frida-server en cours d'exécutionInstallation :
# Installer comme outil autonome avec uv ou pipx
uv tool install git+https://github.com/lautarovculic/frida-ipa-extract.git
# Ou installer comme paquet éditable (pour le développement)
pip install -e .
# Utilisation du point d'entrée (si installé comme outil autonome)
frida-ipa-extract
# Ou utilisation directe du script
python extract.py -U -f com.example.app -o MyApp.ipa
python extract.py -U -f com.example.app -o MyApp.ipa --sandbox
python extract.py -U -f com.example.app -o MyApp.ipa --no-resume
python -m frida_ipa_extract -U --pid 1234 -o MyApp.ipa
./extract.py -U "My Running App"
python extract.py -H 192.168.100.32 -P 2222 -u root -p password -f com.example.app
Arguments :
-f <cible> : lancer une application (identifiant de bundle ou nom d'application)--pid <pid> : s'attacher à un PID en cours d'exécutioncible (positionnel) : nom d'application / identifiant de bundle d'une application en cours d'exécution-o <chemin> : chemin de sortie de l'IPA (par défaut <NomApp>.ipa)-U : se connecter via USB-H <hôte> -P <port> -u <utilisateur> -p <mot de passe> : se connecter via SSH (paramiko)--sandbox : extraire le sandbox de l'application dans <NomApp>-sandbox dans le répertoire courant--no-resume : maintenir une application lancée en suspension (utile si l'application plante en raison des détections de jailbreak lors de l'instrumentation)Si vous ne passez pas -f ou --pid, l'outil s'attache à une application en cours d'exécution. Si aucune cible n'est fournie, il liste les applications en cours d'exécution et vous invite à choisir.
-U, l'outil ouvre un tunnel local vers frida-server sur le port 27042 et utilise SFTP pour télécharger le bundle de l'application. Si vous passez à la fois -U et -H, l'USB est utilisé pour Frida et SSH est utilisé uniquement pour le transfert de fichiers.-f pour la lancer.frida-server est en cours d'exécution sur l'appareil avant l'extraction.--no-resume ou le transfert SSH.Frida attach timed out : l'application peut bloquer l'attachement ; utilisez -f pour lancer ou essayez --no-resume.script has been destroyed pendant le téléchargement : l'application a planté ; réessayez avec --no-resume ou utilisez le transfert SSH (-H/-u/-p).No running apps found : l'application n'est pas en cours d'exécution ; utilisez -f pour la lancer.