Skip to content

iOS/macOS Research Swiss Army Knife

License

Notifications You must be signed in to change notification settings

hack-different/ipsw

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 v9-a disassember
  • research tool

Install

macOS

brew install blacktop/tap/ipsw

Linux

sudo snap install ipsw

Windows

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

Getting Started

❯ ipsw Download and Parse IPSWs (and SO much more) Usage: ipsw [command] Available Commands: appstore Interact with the App Store Connect API class-dump ObjC class-dump a dylib from a DSC or MachO device-list List all iOS devices diff Diff IPSWs download Download Apple Firmware files (and more) dtree Parse DeviceTree dyld Parse dyld_shared_cache ent Search IPSW filesystem DMG or Folder for MachOs with a given entitlement extract Extract kernelcache, dyld_shared_cache or DeviceTree from IPSW/OTA help Help about any command iboot Dump firmwares idev USB connected device commands img4 Parse Img4 info Display IPSW/OTA Info kernel Parse kernelcache macho Parse MachO mdevs List all MobileDevices in IPSW mount Mount DMG from IPSW ota Parse OTAs plist Dump plist as JSON pongo PongoOS Terminal sepfw Dump MachOs ssh SSH into a jailbroken device swift-dump 🚧 Swift class-dump a dylib from a DSC or MachO 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 watch Watch Github Commits Flags: --color colorize output --config string config file (default is $HOME/.config/ipsw/config.yaml) -h, --help help for ipsw --no-color disable colorize output -V, --verbose verbose output Use "ipsw [command] --help" for more information about a command. 

Documentation

graph TD A[Download] --> B[Extract] B --> C[Parse] C --> D[Dump] D --> E[Search] E --> F[Symbolicate] 
Loading

Community

You have questions, need support and or just want to talk about ipsw?

Here are ways to get in touch with the ipsw community:

Follow TwitterFollow MastodonGitHub Discussions

Known Issues

  • macOS IPSW etc support is sometimes broken

    Automated testing of ipsw is challenging as it requires a lot of resources to test all the different IPSW flavors and OS versions etc. No CI/CD can really handle that unless I want to wait forever for it to run on each commit. Please create an issue and I'll fix it as soon as I can ❤️ (NOTE: a comprehensive test suite is in the roadmap so I can at least test on the few local IPSWs I have)

Credit

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

Stargazers

Stargazers over time

License

MIT Copyright (c) 2018-2024 blacktop

About

iOS/macOS Research Swiss Army Knife

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go93.4%
  • C4.4%
  • JavaScript1.0%
  • Shell0.5%
  • CSS0.3%
  • Makefile0.2%
  • Other0.2%