Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ipaforge — CLI Python senza dipendenze per estrarre, ispezionare, modificare e ricostruire archivi .ipa di iOS, convertendo plist e stringhe in XML preservando i binari Mach-O e i bundle di firma. | Kitploit
Strumenti/GitHubGitHub/vighnesh91/ipaforge
Analisi StaticaSicurezza iOSAnalisi del CodicePentesting di App MobiliReverse EngineeringPenetration TestingSicurezza MobileUtilità e FrameworkAnalisi di Binari
GitHubvighnesh91/ipaforge

ipaforge

CLI Python senza dipendenze per estrarre, ispezionare, modificare e ricostruire archivi .ipa di iOS, convertendo plist e stringhe in XML preservando i binari Mach-O e i bundle di firma.

42 giorni faNon ancora revisionato
Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

#IPAForge

IPAForge è uno strumento da riga di comando Python senza dipendenze per decomprimere, ispezionare, modificare e ricostruire archivi iOS .ipa.

Estrae l'archivio completo, converte i formati plist e di localizzazione Apple modificabili in XML leggibile, preserva byte per byte i contenuti opachi e binari, e registra ogni conversione in ipaforge.yml in modo che il framework possa essere ricostruito fedelmente.

Usare responsabilmente: IPAForge è destinato all'interoperabilità, alla ricerca sulla sicurezza e all'analisi legittima delle applicazioni. Rispettare le leggi applicabili, le licenze e i termini di servizio.

Funzionalità

  • Decodifica e ricostruisce archivi iOS .ipa standard.
  • Estrae il 100% del contenuto dell'archivio; nulla viene saltato o scartato silenziosamente.
  • Converte plist binari con qualsiasi estensione di file in XML leggibile.
  • Converte i file .strings di testo legacy in XML modificabile.
  • Ricodifica i file convertiti nei loro formati nativi originali durante la build.
  • Preserva i binari Mach-O e i formati proprietari Apple come .car, .nib e .mom.
  • Estrae gli entitlement incorporati e le informazioni del provisioning profile come riferimenti leggibili.
  • Genera metadati di classificazione e conversione per file in ipaforge.yml.
  • Firma ad-hoc integrata senza necessità di utility di firma esterne.
  • Firma opzionale con certificato reale utilizzando certificati PKCS#12 e provisioning profile.
  • Solo libreria standard; non sono richiesti pacchetti Python di terze parti.
  • Requisiti

    • Si consiglia Python 3.6 o versioni successive.
    • Python 2.7 e Python 3.2+ sono supportati dal livello di compatibilità dello script.
    • Un archivio .ipa valido contenente un bundle Payload/<AppName>.app.

    Installazione

    IPAForge può essere utilizzato direttamente come singolo file Python:

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

    Per installare il comando ipaforge nel tuo PATH:

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

    Per estrarre i file di distribuzione inclusi senza installarli:

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

    Avvio rapido

    Decodificare un IPA

    root@kitploit:~
    ipaforge -d MyApp.ipa
    

    Questo crea una directory framework nella directory di lavoro corrente, normalmente ./MyApp/.

    Modificare i file decodificati

    Modifica i file XML leggibili all'interno del framework generato. I dati e i riferimenti dell'archivio originale sono conservati in original/; i file che sono stati convertiti sono tracciati in ipaforge.yml.

    Costruire un nuovo IPA

    root@kitploit:~
    ipaforge -b MyApp
    

    L'output predefinito è ./MyApp-signed.ipa nella directory di lavoro corrente.

    Usare percorsi espliciti

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

    Riferimento della riga di comando

    root@kitploit:~
    ipaforge -d, --decode INPUT [OUTPUT]
    ipaforge -b, --build  INPUT [OUTPUT]
    
    OpzioneDescrizione
    -d, --decodeDecodifica un IPA in una directory framework modificabile.
    -b, --buildCostruisce un IPA da una directory framework decodificata.
    -f, --forceSovrascrive una directory o un file di output esistente.
    --no-metaNon scrivere ipaforge.yml durante la decodifica.
    --keep-binaryMantieni tutti i file binari durante la decodifica; disabilita la conversione XML.
    -c 0-9, --compression-level 0-9Imposta il livello di compressione ZIP. Predefinito: 9.
    --no-signCostruisce un archivio intenzionalmente non firmato.
    --entitlements FILEIncorpora gli entitlement nella firma costruita.
    --p12 FILEFirma con un certificato sviluppatore PKCS#12 reale.
    --p12-password PASSPassword per il certificato PKCS#12.
    --provision FILEIncorpora e utilizza un provisioning profile con --p12.
    -v, --verboseAbilita il logging di debug.
    -q, --quietStampa solo gli errori.
    --versionVisualizza la versione di IPAForge.
    -h, --helpVisualizza la guida.

    Su Windows, la modalità può essere dedotta automaticamente: un input .ipa viene decodificato e viene costruita una directory framework.

    Firma

    La modalità build firma i bundle con il firmatario ad-hoc integrato per impostazione predefinita. Crea dati CodeDirectory per i binari Mach-O e nuovi file _CodeSignature/CodeResources per i bundle dell'applicazione.

    Per l'installazione su dispositivi iOS stock, utilizzare un certificato sviluppatore reale e un provisioning profile compatibile:

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

    Per incorporare entitlement personalizzati:

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

    Per creare intenzionalmente un archivio non firmato:

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

    Gli archivi non firmati generalmente non possono essere installati da iOS.

    Struttura dell'output di decodifica

    Un framework decodificato contiene comunemente:

    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
    

    La directory original/ e ipaforge.yml non vengono mai inseriti nell'IPA ricostruito.

    Gestione dei file

    IPAForge classifica i file estratti in categorie tra cui:

    • native-bplist — property list binari convertiti in XML e ricostruiti come plist binari.
    • legacy-strings — file .strings classici convertiti in XML e ricostruiti come testo UTF-16.
    • xml-plist — file plist XML esistenti preservati come testo.
    • opaque-compiled — formati Apple compilati proprietari preservati byte per byte.
    • native-binary — eseguibili e librerie Mach-O preservati byte per byte.
    • other-binary — immagini, audio, dati DER e altre risorse preservate byte per byte.

    Codici di uscita

    CodiceSignificato
    0Operazione riuscita.
    1Errore di runtime, come un archivio non valido o un errore di firma.
    2Errore di utilizzo della riga di comando.
    141Output standard chiuso anticipatamente da un consumatore della pipe.

    Note sulla sicurezza

    IPAForge elabora contenuti di archivio non attendibili. Lo strumento applica limiti difensivi ai singoli membri dell'archivio e alla dimensione totale dell'archivio non compresso, ma è comunque consigliabile ispezionare i file sconosciuti in un ambiente isolato.

    Non distribuire o installare applicazioni a meno che non si abbia il diritto legale di analizzarle e firmarle.

    Licenza

    Aggiungi qui il testo della licenza del progetto prima di pubblicare su GitHub. Se non viene inclusa alcuna licenza, gli utenti di GitHub non ricevono automaticamente il permesso di usare, modificare o ridistribuire il codice.

    Contribuire

    Issue e pull request sono benvenute. Si prega di includere:

    • Versione di Python e sistema operativo.
    • La versione di IPAForge.
    • Il comando eseguito.
    • Output di log rilevante con le informazioni sensibili rimosse.
    • Un archivio di riproduzione minimo o una descrizione quando possibile.

    Versione

    Questo README descrive IPAForge 1.24.0.

    Scarica lo strumento