Volver a actualizaciones
Nuevo releaseSep 12, 2026

ipsw v3.1.716

Navaja suiza para investigación en iOS/macOS

Compartir

IPSW Logo

ipsw


¿Qué es ipsw? 🤔

ipsw es un framework integral de investigación por línea de comandos para iOS y macOS. Proporciona un amplio conjunto de herramientas para investigadores de seguridad, ingenieros inversos, desarrolladores de jailbreak y entusiastas de iOS para descargar, analizar y examinar el firmware de Apple e interactuar con dispositivos iOS.

Capacidades Principales

  • 📱 Análisis IPSW/OTA - Descargar, extraer y analizar archivos de firmware de iOS
  • 🔍 Análisis de Binarios - Análisis avanzado de Mach-O con desensamblado ARM y asistencia de IA
  • 🧠 dyld_shared_cache - Análisis completo de caché compartida con volcado de clases ObjC/Swift
  • 🔧 Análisis del Kernel - Análisis de kernelcache, extracción de syscalls y simbolización
  • 📲 Interacción con Dispositivos - Gestión y depuración integral de dispositivos iOS
  • 🔐 Investigación de Firmware - Análisis de firmware IMG4, iBoot, SEP y coprocesadores
  • 🏪 App Store Connect - Integración completa de API para gestión de apps y certificados
  • 🛠️ Herramientas de Desarrollo - Utilidades de SSH, Frida, depuración e ingeniería inversa

Inicio Rápido

Instalación

macOS

Usando el tap de blacktop (incluye extras)

brew install blacktop/tap/ipsw

Usando la fórmula oficial de Homebrew

brew install ipsw

Linux

sudo snap install ipsw

Windows

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

Uso Básico

# Descargar el último IPSW de iOS
ipsw download ipsw --device iPhone16,1 --latest

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

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

# Obtener información del dispositivo
ipsw idev list

Características Principales

📱 Gestión de IPSW y OTA

  • Fuentes de Descarga: Apple, AppleDB, Portal de Desarrolladores, feeds RSS, GitHub, iTunes, Wikipedia
  • Tipos de Archivo: IPSW, OTA, instaladores de macOS, Xcode, KDKs, archivos PCC
  • Operaciones: Extraer, comparar, montar, analizar metadatos
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

🔍 Análisis de Binarios e Ingeniería Inversa

  • Análisis Mach-O: Análisis completo de binarios con extracción de símbolos
  • Desensamblado ARM: Desensamblador ARM v9-a con análisis impulsado por IA
  • Firma de Código: Verificar firmas, analizar entitlements
  • Parcheo de Binarios: Añadir, modificar o eliminar parches
ipsw macho info /path/to/binary
ipsw macho disass /path/to/binary --symbol _main
ipsw macho search /path/to/binary --string "password"

🧠 Análisis de dyld_shared_cache

  • Análisis de Caché: Extraer y analizar la estructura completa de la caché compartida
  • Análisis ObjC: Volcados de clases, análisis de métodos, análisis de protocolos
  • Soporte Swift: Volcado y análisis de clases Swift (experimental)
  • Gestión de Símbolos: Extracción de símbolos y resolución de direcciones
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

📲 Interacción con Dispositivos iOS (idev)

  • Sistema de Archivos: Explorar y transferir archivos mediante AFC
  • Gestión de Apps: Instalar, desinstalar y analizar aplicaciones
  • Copia de Seguridad y Restauración: Operaciones completas de respaldo del dispositivo
  • Desarrollo: Montar imágenes de desarrollador, capturar registros, captura de paquetes
  • Diagnósticos: Información de batería, registros de fallos, diagnósticos del sistema
ipsw idev list
ipsw idev afc ls /
ipsw idev apps ls
ipsw idev backup create
ipsw idev syslog

🔐 Análisis de Firmware y Seguridad

  • IMG4: Analizar y descifrar archivos en formato Image4
  • iBoot: Análisis e investigación del bootloader
  • SEP: Análisis del firmware del Secure Enclave Processor
  • AEA: Descifrado de Archivos Cifrados de Apple
  • Coprocesadores: Análisis de firmware AOP, DCP, GPU y cámara
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

🏪 Integración con App Store Connect

  • Gestión de Certificados: Certificados y perfiles para iOS/macOS
  • Registro de Dispositivos: Gestionar dispositivos de desarrollo
  • Gestión de Apps: Bundle IDs, capacidades y revisiones
  • Aprovisionamiento: Ciclo de vida completo del perfil de aprovisionamiento
ipsw appstore cert ls
ipsw appstore device reg --name "My Device" --udid 1234567890
ipsw appstore profile create --name "Development Profile"

🛠️ Herramientas Avanzadas de Investigación

  • Simbolización: Análisis de registros de fallos y resolución de símbolos
  • Volcado de Clases: Extracción de clases ObjC y Swift
  • Acceso SSH: SSH en dispositivos con jailbreak con debugserver
  • Integración con Frida: Capacidades de instrumentación dinámica
  • Descompilador con IA: Integración con Claude, OpenAI, Gemini, Ollama y OpenRouter
ipsw symbolicate crash.ips --dsym /path/to/symbols
ipsw class-dump /path/to/binary
ipsw ssh debugserver

Arquitectura

ipsw consta de dos componentes principales:

  • ipsw - Herramienta CLI principal con capacidades completas de análisis
  • ipswd - Daemon de API REST para operaciones remotas y automatización

Configuración

ipsw admite archivos de configuración YAML y variables de entorno:

# Crear directorio de configuración
mkdir -p ~/.config/ipsw

# Copiar configuración de ejemplo
cp config.example.yml ~/.config/ipsw/config.yaml

Soporte de Bases de Datos

  • SQLite (predeterminado) - Almacenamiento local
  • PostgreSQL - Implementaciones de producción

Descompilador con IA

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"
   • Cargando archivo de caché de símbolos...
   • Descompilando... 🕒
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];
        }
    }
}

Casos de Uso

Investigación de Seguridad

  • Análisis de vulnerabilidades y desarrollo de exploits
  • Evaluación de seguridad del firmware
  • Ingeniería inversa de binarios

Desarrollo de Jailbreak

  • Análisis y explotación de la cadena de arranque
  • Investigación de extensiones del kernel
  • Modificación y parcheo del sistema

Desarrollo iOS

  • Depuración y análisis de apps
  • Gestión de certificados y aprovisionamiento
  • Pruebas y automatización de dispositivos

Informática Forense Digital

  • Extracción y análisis de datos del dispositivo
  • Reconstrucción de líneas de tiempo
  • Análisis de artefactos

Requisitos

  • Go: 1.26+ (para compilar desde el código fuente)
  • Plataforma: macOS, Linux, Windows
  • USB: libusb para interacción con dispositivos
  • Opcional: Claves API de IA para análisis mejorado

Documentación

  • Sitio Web: https://blacktop.github.io/ipsw
  • Documentación de API: Documentación de la API REST disponible en /docs al ejecutar ipswd
  • Ejemplos: Ejemplos completos de uso en la documentación

SKILL.md

Potencia tus agentes de IA con los superpoderes de ipsw

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

🆕 Wiki Impulsado por IA

Haz preguntas sobre el repositorio usando IA:

[!WARNING] Las respuestas de IA pueden contener alucinaciones: verifica la información importante.

Recursos de la Comunidad

📊 Diferencias de IPSW

Diferencias de firmware precalculadas: ipsw-diffs

💬 Comunidad

GitHub Discussions

Contribuciones

¡Agradecemos las contribuciones! Consulta CONTRIBUTING.md para conocer las pautas.

Desarrollo

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

Problemas Conocidos

  • Soporte de IPSW para macOS: Algunas operaciones de firmware de macOS pueden presentar problemas de compatibilidad
  • Pruebas: Las pruebas exhaustivas son difíciles debido a la variedad de versiones de firmware y tipos de dispositivos
  • Uso Intensivo de Recursos: Algunas operaciones requieren memoria y potencia de procesamiento significativas

Crea un issue si encuentras problemas: ¡las correcciones tienen prioridad! Se planea un conjunto completo de pruebas para futuras versiones.

Créditos

Un enorme agradecimiento a:

  • Jonathan Levin por sus legendarias herramientas y su exhaustiva documentación sobre los internals de iOS
  • La comunidad de investigación de iOS por su continua innovación e intercambio de conocimientos
  • Todos los contribuyentes que ayudan a mejorar este proyecto

Licencia

Licencia MIT: consulta LICENSE para más detalles.

Categorías