/ipsw

iOS/macOS Research Swiss Army Knife

Primary LanguageGoMIT LicenseMIT

IPSW Logo

ipsw

iOS/macOS Research Swiss Army Knife


What is ipsw 🤔

  • IPSW downloader/exploder
  • OTA downloader/exploder
  • macho parser
  • ObjC class-dump
  • Swift class-dump 🚧
  • dyld_shared_cache parser
  • kernelcache parser
  • img4 parser/decrypter
  • device-tree parser
  • ARM v8.5-a disassember
  • research tool
  • otool wannabe
  • objdump wannabe
  • jtool wannabe

Install

brew install blacktop/tap/ipsw

Getting Started

❯ ipsw

Download and Parse IPSWs

Usage:
  ipsw [command]

Available Commands:
  ctfdump         Dump CTF info
  device-list     List all iOS devices
  disass          🚧 [WIP] Disassemble ARM64 binaries at address or symbol
  download        Download and parse IPSW(s) from the internets
  dtree           Parse DeviceTree
  dyld            Parse dyld_shared_cache
  ent             Search IPSW filesystem DMG for MachOs with a given entitlement
  extract         Extract kernelcache, dyld_shared_cache or DeviceTree from IPSW
  help            Help about any command
  iboot           Dump firmwares
  img4            Parse Img4
  info            Display IPSW Info
  kernel          Parse kernelcache
  lipo            Extract single MachO out of a universal/fat MachO
  macho           Parse a MachO file
  ota             Extract file(s) from OTA
  sepfw           Dump MachOs
  shsh            Get shsh blobs from device
  symbolicate     Symbolicate ARM 64-bit crash logs (similar to Apple's symbolicatecrash)
  update          Download an ipsw update if one exists
  version         Print the version number of ipsw

Flags:
      --config string   config file (default is $HOME/.ipsw.yaml)
  -h, --help            help for ipsw
  -V, --verbose         verbose output

Use "ipsw [command] --help" for more information about a command.

Documentation

Credit

Big shout out to Jonathan Levin's amazing books and his legendary jtool

License

MIT Copyright (c) 2018-2021 blacktop