Torna agli aggiornamenti
New releaseSep 12, 2026

ipsw v3.1.716

Coltellino svizzero per la ricerca iOS/macOS

Condividi

IPSW Logo

ipsw

Coltellino svizzero per la ricerca su iOS/macOS


Cos'è ipsw 🤔

ipsw è un framework di ricerca completo da riga di comando per iOS e macOS. Fornisce un'ampia gamma di strumenti per ricercatori di sicurezza, reverse engineer, sviluppatori di jailbreak e appassionati iOS per scaricare, analizzare e studiare il firmware Apple e interagire con i dispositivi iOS.

Funzionalità principali

  • 📱 Analisi IPSW/OTA - Scarica, estrai e analizza i file firmware iOS
  • 🔍 Analisi binaria - Parsing avanzato di Mach-O con disassemblaggio ARM e assistenza AI
  • 🧠 dyld_shared_cache - Analisi completa della cache condivisa con dumping delle classi ObjC/Swift
  • 🔧 Analisi del kernel - Parsing della kernelcache, estrazione delle syscall e symbolication
  • 📲 Interazione con i dispositivi - Gestione e debug completi dei dispositivi iOS
  • 🔐 Ricerca sul firmware - Analisi del firmware IMG4, iBoot, SEP e co-processori
  • 🏪 App Store Connect - Integrazione API completa per la gestione di app e certificati
  • 🛠️ Strumenti per sviluppatori - Utility per SSH, Frida, debug e reverse engineering

Avvio rapido

Installazione

macOS

Utilizzando il tap blacktop (include extra)

brew install blacktop/tap/ipsw

Utilizzando la formula Homebrew ufficiale

brew install ipsw

Linux

sudo snap install ipsw

Windows

scoop bucket add blacktop https://github.com/blacktop/scoop-bucket.git 
scoop install blacktop/ipsw

Utilizzo di base

# Scarica l'ultimo IPSW iOS
ipsw download ipsw --device iPhone16,1 --latest

# Estrai la kernelcache
ipsw extract --kernel iPhone16,1_18.2_22C150_Restore.ipsw

# Analizza dyld_shared_cache
ipsw dyld info /path/to/dyld_shared_cache_arm64

# Ottieni informazioni sul dispositivo
ipsw idev list

Funzionalità principali

📱 Gestione IPSW e OTA

  • Fonti di download: Apple, AppleDB, Developer Portal, feed RSS, GitHub, iTunes, Wikipedia
  • Tipi di file: IPSW, OTA, installer macOS, Xcode, KDK, file PCC
  • Operazioni: Estrai, confronta, monta, analizza i metadati
ipsw download ipsw --device iPhone16,1 --latest
ipsw extract --kernel iPhone16,1_18.2_22C150_Restore.ipsw
ipsw diff iPhone16,1_18.1_22B83_Restore.ipsw iPhone16,1_18.2_22C150_Restore.ipsw

🔍 Analisi binaria e reverse engineering

  • Parsing Mach-O: Analisi binaria completa con estrazione dei simboli
  • Disassemblaggio ARM: Disassembler ARM v9-a con analisi basata su AI
  • Firma del codice: Verifica delle firme, analisi delle entitlement
  • Patching binario: Aggiungi, modifica o rimuovi patch
ipsw macho info /path/to/binary
ipsw macho disass /path/to/binary --symbol _main
ipsw macho search /path/to/binary --string "password"

🧠 Analisi di dyld_shared_cache

  • Parsing della cache: Estrai e analizza la struttura completa della cache condivisa
  • Analisi ObjC: Dump delle classi, analisi dei metodi, parsing dei protocolli
  • Supporto Swift: Dump e analisi delle classi Swift (sperimentale)
  • Gestione dei simboli: Estrazione dei simboli e risoluzione degli indirizzi
ipsw dyld info /path/to/dyld_shared_cache
ipsw dyld extract /path/to/dyld_shared_cache --dylib Foundation
ipsw dyld objc class /path/to/dyld_shared_cache --class NSString

📲 Interazione con i dispositivi iOS (idev)

  • File system: Sfoglia e trasferisci file tramite AFC
  • Gestione app: Installa, disinstalla e analizza le applicazioni
  • Backup e ripristino: Operazioni complete di backup del dispositivo
  • Sviluppo: Monta immagini sviluppatore, cattura log, packet capture
  • Diagnostica: Informazioni sulla batteria, log di crash, diagnostica di sistema
ipsw idev list
ipsw idev afc ls /
ipsw idev apps ls
ipsw idev backup create
ipsw idev syslog

🔐 Analisi del firmware e della sicurezza

  • IMG4: Parsing e decrittazione dei file in formato Image4
  • iBoot: Analisi e ricerca sul bootloader
  • SEP: Analisi del firmware del Secure Enclave Processor
  • AEA: Decrittazione degli archivi crittografati Apple
  • Co-processori: Analisi del firmware AOP, DCP, GPU, Camera
ipsw img4 dec iBoot.img4
ipsw fw sep iPhone16,1_18.2_22C150_Restore.ipsw
ipsw fw iboot iPhone16,1_18.2_22C150_Restore.ipsw

🏪 Integrazione con App Store Connect

  • Gestione certificati: Certificati e profili iOS/macOS
  • Registrazione dispositivi: Gestisci i dispositivi di sviluppo
  • Gestione app: Bundle ID, funzionalità e recensioni
  • Provisioning: Ciclo di vita completo dei profili di provisioning
ipsw appstore cert ls
ipsw appstore device reg --name "My Device" --udid 1234567890
ipsw appstore profile create --name "Development Profile"

🛠️ Strumenti di ricerca avanzati

  • Symbolication: Analisi dei log di crash e risoluzione dei simboli
  • Dump delle classi: Estrazione delle classi ObjC e Swift
  • Accesso SSH: SSH su dispositivi jailbroken con debugserver
  • Integrazione Frida: Funzionalità di strumentazione dinamica
  • Decompilatore basato su AI: Integrazione con Claude, OpenAI, Gemini, Ollama e OpenRouter
ipsw symbolicate crash.ips --dsym /path/to/symbols
ipsw class-dump /path/to/binary
ipsw ssh debugserver

Architettura

ipsw è composto da due componenti principali:

  • ipsw - Strumento CLI principale con funzionalità di analisi complete
  • ipswd - Daemon API REST per operazioni remote e automazione

Configurazione

ipsw supporta file di configurazione YAML e variabili d'ambiente:

# Crea la directory di configurazione
mkdir -p ~/.config/ipsw

# Copia la configurazione di esempio
cp config.example.yml ~/.config/ipsw/config.yaml

Supporto database

  • SQLite (predefinito) - Archiviazione locale
  • PostgreSQL - Distribuzioni di produzione

Decompilatore AI

https://blacktop.github.io/ipsw/docs/guides/decompiler

❱ ipsw macho disass /System/Library/PrivateFrameworks/ApplePushService.framework/apsd --entry \
             --dec --dec-model "Claude 3.7 Sonnet"
   • Caricamento del file cache dei simboli...
   • Decompilazione... 🕒
int main(int argc, char *argv[]) {
    @autoreleasepool {
        __set_user_dir_suffix(@"com.apple.apsd");

        @autoreleasepool {
            APSDaemon *daemon = [[APSDaemon alloc] init];

            if (daemon) {
                NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
                [runLoop run];
                [runLoop release];
            }

            [daemon release];
        }

        return 0;
    }

    @catch (NSException *exception) {
        if ([exception reason] == 1) {
            id exceptionObj = [exception retain];
            id logger = [APSLog daemon];

            if (_os_log_type_enabled(logger, 0x11)) {
                [exceptionObj logWithLogger:logger];
            }

            [logger release];
            [exceptionObj release];
        }
    }
}

Casi d'uso

Ricerca sulla sicurezza

  • Analisi delle vulnerabilità e sviluppo di exploit
  • Valutazione della sicurezza del firmware
  • Reverse engineering dei binari

Sviluppo di jailbreak

  • Analisi e sfruttamento della bootchain
  • Ricerca sulle estensioni del kernel
  • Modifica e patching del sistema

Sviluppo iOS

  • Debug e analisi delle app
  • Gestione di certificati e provisioning
  • Test e automazione dei dispositivi

Informatica forense digitale

  • Estrazione e analisi dei dati del dispositivo
  • Ricostruzione della timeline
  • Analisi degli artefatti

Requisiti

  • Go: 1.26+ (per la compilazione dal sorgente)
  • Piattaforma: macOS, Linux, Windows
  • USB: libusb per l'interazione con i dispositivi
  • Opzionale: Chiavi API AI per analisi avanzate

Documentazione

  • Sito web: https://blacktop.github.io/ipsw
  • Documentazione API: Documentazione API REST disponibile su /docs quando si esegue ipswd
  • Esempi: Esempi di utilizzo completi nella documentazione

SKILL.md

Potenzia i tuoi agenti AI con i superpoteri di ipsw

npx skills add https://github.com/blacktop/ipsw-skill --skill ipsw

🆕 Wiki basato su AI

Fai domande sul repository utilizzando l'AI:

[!WARNING] Le risposte dell'AI possono contenere allucinazioni - verifica le informazioni importanti.

Risorse della community

📊 Diff IPSW

Differenze firmware pre-calcolate: ipsw-diffs

💬 Community

GitHub Discussions

Contributi

Accogliamo con piacere i contributi! Consulta CONTRIBUTING.md per le linee guida.

Sviluppo

git clone https://github.com/blacktop/ipsw.git
cd ipsw
make build

Problemi noti

  • Supporto IPSW macOS: Alcune operazioni sul firmware macOS potrebbero presentare problemi di compatibilità
  • Test: I test completi sono difficili a causa della varietà di versioni del firmware e tipi di dispositivi
  • Intensivo di risorse: Alcune operazioni richiedono memoria e potenza di elaborazione significative

Crea un issue se incontri problemi - le correzioni hanno priorità! Una suite di test completa è prevista per le versioni future.

Crediti

Un enorme ringraziamento a:

  • Jonathan Levin per i suoi strumenti leggendari e la documentazione completa sugli internals iOS
  • La community di ricerca iOS per l'innovazione continua e la condivisione delle conoscenze
  • Tutti i contributori che aiutano a migliorare questo progetto

Licenza

Licenza MIT - consulta LICENSE per i dettagli.

Categorie