Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ipaforge — CLI de Python sin dependencias para desempaquetar, inspeccionar, editar y reconstruir archivos .ipa de iOS, convirtiendo plists y cadenas a XML mientras preserva los binarios Mach-O y los bundles de firma. | Kitploit
Herramientas/GitHubGitHub/vighnesh91/ipaforge
Análisis EstáticoSeguridad iOSAnálisis de CódigoPentesting de Apps MóvilesIngeniería InversaPruebas de PenetraciónSeguridad MóvilUtilidades y FrameworksAnálisis de Binarios
GitHubvighnesh91/ipaforge

ipaforge

CLI de Python sin dependencias para desempaquetar, inspeccionar, editar y reconstruir archivos .ipa de iOS, convirtiendo plists y cadenas a XML mientras preserva los binarios Mach-O y los bundles de firma.

182hace 15 díasAún no revisado
Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

#IPAForge

IPAForge es una herramienta de línea de comandos de Python sin dependencias para desempaquetar, inspeccionar, editar y reconstruir archivos .ipa de iOS.

Extrae el archivo completo, convierte los formatos editables de plist y localización de Apple en XML legible, preserva el contenido opaco y binario byte por byte, y registra cada conversión en ipaforge.yml para que el framework pueda reconstruirse fielmente.

Úselo de forma responsable: IPAForge está destinado a la interoperabilidad, la investigación de seguridad y el análisis legítimo de aplicaciones. Respete las leyes, licencias y términos de servicio aplicables.

Características

  • Decodifica y reconstruye archivos .ipa estándar de iOS.
  • Extrae el 100% del contenido del archivo; nada se omite ni se descarta silenciosamente.
  • Convierte plists binarios con cualquier extensión de archivo en XML legible.
  • Convierte archivos .strings de texto heredados en XML editable.
  • Recodifica los archivos convertidos a sus formatos nativos originales durante la compilación.
  • Preserva binarios Mach-O y formatos propietarios de Apple como .car, .nib y .mom.
  • Extrae los entitlements incrustados y la información del perfil de aprovisionamiento como referencias legibles.
  • Genera metadatos de clasificación y conversión por archivo en ipaforge.yml.
  • Firma ad-hoc integrada sin necesidad de utilidades de firma externas.
  • Firma opcional con certificado real mediante certificados PKCS#12 y perfiles de aprovisionamiento.
  • Solo biblioteca estándar; no se requieren paquetes de Python de terceros.

Requisitos

  • Se recomienda Python 3.6 o superior.
  • Python 2.7 y Python 3.2+ son compatibles gracias a la capa de compatibilidad del script.
  • Un archivo .ipa válido que contenga un bundle Payload/<AppName>.app.

Instalación

IPAForge puede usarse directamente como un único archivo de Python:

python3 ipaforge.py --help

Para instalar el comando ipaforge en tu PATH:

python3 ipaforge.py --install

Para extraer los archivos de distribución incluidos sin instalarlos:

python3 ipaforge.py --extract

Inicio rápido

Decodificar un IPA

ipaforge -d MyApp.ipa

Esto crea un directorio de framework en el directorio de trabajo actual, normalmente ./MyApp/.

Editar los archivos decodificados

Modifica los archivos XML legibles dentro del framework generado. Los datos y referencias del archivo original se conservan en original/; los archivos que se convirtieron se registran en ipaforge.yml.

Compilar un nuevo IPA

ipaforge -b MyApp

La salida predeterminada es ./MyApp-signed.ipa en el directorio de trabajo actual.

Usar rutas explícitas

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

Referencia de línea de comandos

ipaforge -d, --decode INPUT [OUTPUT]
ipaforge -b, --build  INPUT [OUTPUT]
OpciónDescripción
-d, --decodeDecodifica un IPA en un directorio de framework editable.
-b, --buildConstruye un IPA a partir de un directorio de framework decodificado.
-f, --forceSobrescribe un directorio o archivo de salida existente.
--no-metaNo escribir ipaforge.yml durante la decodificación.
--keep-binaryMantener todos los archivos en binario durante la decodificación; deshabilitar la conversión XML.
-c 0-9, --compression-level 0-9Establecer el nivel de compresión ZIP. Predeterminado: 9.
--no-signConstruir un archivo intencionalmente sin firmar.
--entitlements FILEIncrustar los entitlements en la firma construida.
--p12 FILEFirmar con un certificado de desarrollador PKCS#12 real.
--p12-password PASSContraseña para el certificado PKCS#12.
--provision FILEIncrustar y usar un perfil de aprovisionamiento con --p12.
-v, --verboseHabilitar el registro de depuración.
-q, --quietMostrar solo errores.
--versionMostrar la versión de IPAForge.
-h, --helpMostrar la ayuda.

En Windows, el modo se puede inferir automáticamente: una entrada .ipa se decodifica y se construye un directorio de framework.

Firma

El modo de construcción firma los bundles con el firmador ad-hoc integrado de forma predeterminada. Crea datos de CodeDirectory para binarios Mach-O y archivos _CodeSignature/CodeResources nuevos para los bundles de aplicación.

Para la instalación en dispositivos iOS de fábrica, use un certificado de desarrollador real y un perfil de aprovisionamiento compatible:

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

Para incrustar derechos personalizados:

ipaforge -b MyApp --entitlements entitlements.plist

Para crear intencionadamente un archivo sin firmar:

ipaforge -b MyApp --no-sign

Las aplicaciones sin firmar generalmente no pueden instalarse en iOS.

Estructura de salida decodificada

Un framework decodificado comúnmente contiene:

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

El directorio original/ y ipaforge.yml nunca se empaquetan en el IPA reconstruido.

Manejo de archivos

IPAForge clasifica los archivos extraídos en categorías que incluyen:

  • native-bplist — listas de propiedades binarias convertidas a XML y reconstruidas como listas de propiedades binarias.
  • legacy-strings — archivos .strings clásicos convertidos a XML y reconstruidos como texto UTF-16.
  • xml-plist — archivos plist XML existentes conservados como texto.
  • opaque-compiled — formatos propietarios compilados de Apple conservados byte por byte.
  • native-binary — ejecutables y bibliotecas Mach-O conservados byte por byte.
  • other-binary — imágenes, audio, datos DER y otros recursos conservados byte por byte.

Códigos de salida

CódigoSignificado
0Operación exitosa.
1Error en tiempo de ejecución, como un archivo inválido o un fallo de firma.
2Error de uso de la línea de comandos.
141Salida estándar cerrada anticipadamente por un consumidor de tubería.

Notas de seguridad

IPAForge procesa contenidos de archivos no confiables. La herramienta aplica límites defensivos a los miembros individuales del archivo y al tamaño total descomprimido del archivo, pero aun así deberías inspeccionar archivos desconocidos en un entorno aislado.

No distribuyas ni instales aplicaciones a menos que tengas el derecho legal de analizarlas y firmarlas.

Versión

Este README describe IPAForge 1.24.0.

Licencia

Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.

Descargar herramienta