Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
ipaforge — CLI Python sans dépendances pour décompresser, inspecter, modifier et reconstruire les archives .ipa iOS, en convertissant les plists et les chaînes en XML tout en préservant les binaires Mach-O et les bundles de signature. | Kitploit
Outils/GitHubGitHub/vighnesh91/ipaforge
Analyse StatiqueSécurité iOSAnalyse de CodePentesting d'Applications MobilesRétro-ingénierieTests d'IntrusionSécurité MobileUtilitaires et FrameworksAnalyse de Binaires
GitHubvighnesh91/ipaforge

ipaforge

CLI Python sans dépendances pour décompresser, inspecter, modifier et reconstruire les archives .ipa iOS, en convertissant les plists et les chaînes en XML tout en préservant les binaires Mach-O et les bundles de signature.

183il y a 15 joursPas encore vérifié
Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

#IPAForge

IPAForge est un outil en ligne de commande Python sans dépendances pour décompresser, inspecter, modifier et reconstruire des archives iOS .ipa.

Il extrait l'intégralité de l'archive, convertit les formats plist et de localisation Apple modifiables en XML lisible, préserve le contenu opaque et binaire octet par octet, et enregistre chaque conversion dans ipaforge.yml afin que le framework puisse être reconstruit fidèlement.

À utiliser de manière responsable : IPAForge est destiné à l'interopérabilité, à la recherche en sécurité et à l'analyse légitime d'applications. Respectez les lois, licences et conditions d'utilisation applicables.

Fonctionnalités

  • Décoder et reconstruire des archives iOS .ipa standard.
  • Extraire 100 % du contenu de l'archive ; rien n'est silencieusement ignoré ou abandonné.
  • Convertir les plists binaires de n'importe quelle extension de fichier en XML lisible.
  • Convertir les fichiers .strings texte hérités en XML modifiable.
  • Réencoder les fichiers convertis dans leurs formats natifs d'origine lors de la construction.
  • Préserver les binaires Mach-O et les formats propriétaires Apple tels que .car, .nib et .mom.
  • Extraire les entitlements intégrés et les informations de profil de provisionnement sous forme de références lisibles.
  • Générer une classification par fichier et des métadonnées de conversion dans ipaforge.yml.
  • Signature ad-hoc intégrée sans nécessiter d'utilitaire de signature externe.
  • Signature optionnelle avec un véritable certificat à l'aide de certificats PKCS#12 et de profils de provisionnement.
  • Uniquement la bibliothèque standard ; aucun package Python tiers n'est requis.

Prérequis

  • Python 3.6 ou plus récent est recommandé.
  • Python 2.7 et Python 3.2+ sont pris en charge par la couche de compatibilité du script.
  • Une archive .ipa valide contenant un bundle Payload/<AppName>.app.

Installation

IPAForge peut être utilisé directement comme un fichier Python unique :

python3 ipaforge.py --help

Pour installer la commande ipaforge dans votre PATH :

python3 ipaforge.py --install

Pour extraire les fichiers de distribution fournis sans les installer :

python3 ipaforge.py --extract

Démarrage rapide

Décoder un IPA

ipaforge -d MyApp.ipa

Cela crée un répertoire de framework dans le répertoire de travail courant, normalement ./MyApp/.

Modifier les fichiers décodés

Modifiez les fichiers XML lisibles à l'intérieur du framework généré. Les données et références de l'archive d'origine sont conservées dans original/ ; les fichiers qui ont été convertis sont suivis dans ipaforge.yml.

Construire un nouveau IPA

ipaforge -b MyApp

La sortie par défaut est ./MyApp-signed.ipa dans le répertoire de travail courant.

Utiliser des chemins explicites

ipaforge -d MyApp.ipa decoded-framework
ipaforge -b decoded-framework rebuilt.ipa

Référence de ligne de commande

ipaforge -d, --decode INPUT [OUTPUT]
ipaforge -b, --build  INPUT [OUTPUT]
OptionDescription
-d, --decodeDécode un IPA dans un répertoire de framework modifiable.
-b, --buildConstruit un IPA à partir d'un répertoire de framework décodé.
-f, --forceÉcrase un répertoire ou un fichier de sortie existant.
--no-metaN'écrit pas ipaforge.yml lors du décodage.
--keep-binaryConserve tous les fichiers en binaire lors du décodage ; désactive la conversion XML.
-c 0-9, --compression-level 0-9Définit le niveau de compression ZIP. Par défaut : 9.
--no-signConstruit une archive volontairement non signée.
--entitlements FILEIntègre les entitlements dans la signature générée.
--p12 FILESigne avec un véritable certificat développeur PKCS#12.
--p12-password PASSMot de passe du certificat PKCS#12.
--provision FILEIntègre et utilise un profil de provisionnement avec --p12.
-v, --verboseActive la journalisation de débogage.
-q, --quietN'affiche que les erreurs.
--versionAffiche la version d'IPAForge.
-h, --helpAffiche l'aide.

Sous Windows, le mode peut être déduit automatiquement : une entrée .ipa est décodée et un répertoire de framework est construit.

Signature

En mode build, les bundles sont signés par défaut avec le signataire ad-hoc intégré. Il crée des données CodeDirectory pour les binaires Mach-O et de nouveaux fichiers _CodeSignature/CodeResources pour les bundles d'application.

Pour l'installation sur des appareils iOS standards, utilisez un véritable certificat développeur et un profil de provisionnement compatible :

ipaforge -b MyApp \
  --p12 developer.p12 \
  --p12-password 'your-password' \
  --provision embedded.mobileprovision

Pour intégrer des droits personnalisés :

ipaforge -b MyApp --entitlements entitlements.plist

Pour créer intentionnellement une archive non signée :

ipaforge -b MyApp --no-sign

Les archives non signées ne peuvent généralement pas être installées par iOS.

Structure de la sortie décodée

Un framework décodé contient généralement :

MyApp/
├── Payload/
│   └── MyApp.app/
├── original/       # reference copies of signatures, profiles, and entitlements
├── readable/       # human-readable summaries for opaque formats and binaries
└── ipaforge.yml    # file classifications and conversion metadata

Les répertoires original/ et ipaforge.yml ne sont jamais intégrés dans l'IPA reconstruit.

Gestion des fichiers

IPAForge classe les fichiers extraits en catégories, notamment :

  • native-bplist — listes de propriétés binaires converties en XML et reconstruites en listes de propriétés binaires.
  • legacy-strings — fichiers .strings classiques convertis en XML et reconstruits en texte UTF-16.
  • xml-plist — fichiers plist XML existants conservés en tant que texte.
  • opaque-compiled — formats Apple compilés propriétaires conservés octet par octet.
  • native-binary — exécutables et bibliothèques Mach-O conservés octet par octet.
  • other-binary — images, audio, données DER et autres ressources conservés octet par octet.

Codes de sortie

CodeSignification
0Opération réussie.
1Erreur d'exécution, telle qu'une archive invalide ou un échec de signature.
2Erreur d'utilisation de la ligne de commande.
141Sortie standard fermée prématurément par un consommateur de pipe.

Notes de sécurité

IPAForge traite le contenu d'archives non fiables. L'outil applique des limites défensives aux membres individuels des archives et à la taille totale décompressée de l'archive, mais vous devriez tout de même inspecter les fichiers inconnus dans un environnement isolé.

Ne distribuez ni n'installez d'applications à moins d'avoir le droit légal de les analyser et de les signer.

Version

Ce README décrit IPAForge 1.24.0.

Licence

Ce projet est sous licence MIT - consultez le fichier LICENSE pour plus de détails.

Télécharger l’outil