Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 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.

4hace 2 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.

Úsalo de forma responsable: IPAForge está destinado a la interoperabilidad, la investigación de seguridad y el análisis legítimo de aplicaciones. Respeta 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 usando 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 Python:

    root@kitploit:~
    python3 ipaforge.py --help
    

    Para instalar el comando ipaforge en tu PATH:

    root@kitploit:~
    python3 ipaforge.py --install
    

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

    root@kitploit:~
    python3 ipaforge.py --extract
    

    Inicio rápido

    Decodificar un IPA

    root@kitploit:~
    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

    root@kitploit:~
    ipaforge -b MyApp
    

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

    Usar rutas explícitas

    root@kitploit:~
    ipaforge -d MyApp.ipa decoded-framework
    ipaforge -b decoded-framework rebuilt.ipa
    

    Referencia de línea de comandos

    root@kitploit:~
    ipaforge -d, --decode INPUT [OUTPUT]
    ipaforge -b, --build  INPUT [OUTPUT]
    
    OpciónDescripción
    -d, --decodeDecodifica un IPA en un directorio de framework editable.
    -b, --buildCompila un IPA desde un directorio de framework decodificado.
    -f, --forceSobrescribe un directorio o archivo de salida existente.
    --no-metaNo escribe ipaforge.yml durante la decodificación.
    --keep-binaryMantiene todos los archivos en binario durante la decodificación; desactiva la conversión a XML.
    -c 0-9, --compression-level 0-9Establece el nivel de compresión ZIP. Predeterminado: 9.
    --no-signCompila un archivo intencionalmente sin firmar.
    --entitlements FILEIncrusta entitlements en la firma compilada.
    --p12 FILEFirma con un certificado de desarrollador PKCS#12 real.
    --p12-password PASSContraseña para el certificado PKCS#12.
    --provision FILEIncrusta y usa un perfil de aprovisionamiento con --p12.
    -v, --verboseActiva el registro de depuración.
    -q, --quietImprime solo errores.
    --versionMuestra la versión de IPAForge.
    -h, --helpMuestra la ayuda.

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

    Firma

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

    Para instalar en dispositivos iOS de fábrica, usa un certificado de desarrollador real y un perfil de aprovisionamiento compatible:

    root@kitploit:~
    ipaforge -b MyApp \
      --p12 developer.p12 \
      --p12-password 'your-password' \
      --provision embedded.mobileprovision
    

    Para incrustar entitlements personalizados:

    root@kitploit:~
    ipaforge -b MyApp --entitlements entitlements.plist
    

    Para crear intencionalmente un archivo sin firmar:

    root@kitploit:~
    ipaforge -b MyApp --no-sign
    

    Los archivos sin firmar generalmente no pueden ser instalados por iOS.

    Estructura de salida de la decodificación

    Un framework decodificado normalmente contiene:

    root@kitploit:~
    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 plists binarios.
    • legacy-strings — archivos .strings clásicos convertidos a XML y reconstruidos como texto UTF-16.
    • xml-plist — archivos plist XML existentes preservados como texto.
    • opaque-compiled — formatos compilados propietarios de Apple preservados byte por byte.
    • native-binary — ejecutables y bibliotecas Mach-O preservados byte por byte.
    • other-binary — imágenes, audio, datos DER y otros recursos preservados 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.
    141La salida estándar se cerró anticipadamente por un consumidor de tubería.

    Notas de seguridad

    IPAForge procesa contenido 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.

    Licencia

    Agrega el texto de la licencia del proyecto aquí antes de publicarlo en GitHub. Si no se incluye una licencia, los usuarios de GitHub no reciben automáticamente permiso para usar, modificar o redistribuir el código.

    Contribuciones

    Las issues y pull requests son bienvenidas. Por favor incluye:

    • Versión de Python y sistema operativo.
    • La versión de IPAForge.
    • El comando que se ejecutó.
    • La salida de registro relevante con la información sensible eliminada.
    • Un archivo de reproducción mínimo o una descripción cuando sea posible.

    Versión

    Este README describe IPAForge 1.24.0.

    Descargar herramienta