Tag Archives: iOS

Backing up SHSH2 blobs with Apple Silicon M1 Mac

I’m posting this because the process wasn’t as straightforward as it did for Intel macs where you could simply use precompiled packages or run brew install libimobiledevice. Here is what I did:

1. Install Xcode from App Store

2. Install Xcode command line tools

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo xcode-select --install
sudo xcode-select --install
sudo xcode-select --install

3. Install Homebrew

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/manatails/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/manatails/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/manatails/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

4. Install required tools

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
brew update
brew install --HEAD usbmuxd
brew install --HEAD libimobiledevice
brew install --HEAD libirecovery
brew update brew install --HEAD usbmuxd brew install --HEAD libimobiledevice brew install --HEAD libirecovery
brew update
brew install --HEAD usbmuxd

brew install --HEAD libimobiledevice

brew install --HEAD libirecovery

5. Use libimobiledevice to collect necessary information

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ideviceinfo // get device information
ideviceenterrecovery (UniqueDeviceID from ideviceinfo) //put the device into recovery mode
irecovery -q //you can get NONC and ECID from this command
irecovery -n //return your device to normal mode
ideviceinfo // get device information ideviceenterrecovery (UniqueDeviceID from ideviceinfo) //put the device into recovery mode irecovery -q //you can get NONC and ECID from this command irecovery -n //return your device to normal mode
ideviceinfo // get device information

ideviceenterrecovery (UniqueDeviceID from ideviceinfo) //put the device into recovery mode

irecovery -q //you can get NONC and ECID from this command

irecovery -n //return your device to normal mode

6. Back up blobs using TSS Saver: https://tsssaver.1conan.com/v2/
Input your ECID and apnonce(NONC) and you’re done.

—-
I also kept getting strange zsh: process killed message when I first started any of the brew packages, but I fixed it by completely uninstalling brew using the uninstall script then removing the installation folder, then reinstalling homebrew.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
sudo rm -rf /opt/homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)" sudo rm -rf /opt/homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
sudo rm -rf /opt/homebrew

I also recommend saving the entire output of ideviceinfo and irecovery -q command somewhere just in case.