Skip to content

Instantly share code, notes, and snippets.

@merenkoff
Forked from n0mi1k/ipagrabber.py
Created December 24, 2024 14:32
Show Gist options
  • Save merenkoff/70fad44b7f9d18d4dd025780c831d5e5 to your computer and use it in GitHub Desktop.
Save merenkoff/70fad44b7f9d18d4dd025780c831d5e5 to your computer and use it in GitHub Desktop.
.IPA file extracter for Apple Configurator
import os
import shutil
"""
Steps to retrieve the IPA file from the Configurator app:
1. Install Apple Configurator from the Mac App Store and sign in
2. Connect your iOS device to your Mac
3. Select "Add > Apps..." and search for the app you want to install, click "Add"
4. The newer Apple Configurator deletes the IPA after installing it, so you'll need to use this tool to grab it
5. Run this script and wait for the app to be installed
NOTE: Remember to modify appsDir and ipaDir accordingly below
"""
appsDir = "/Users/user/Library/Group Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps" # Configurator app directory
ipaDir = "/Users/user/Desktop/IPAs" # Directory to extract to
if not os.path.exists(ipaDir):
os.makedirs(ipaDir)
print("[+] Waiting for new IPA...")
ipaList = []
while True:
for root, dirs, files in os.walk(appsDir):
for file in files:
if file.endswith(".ipa"):
if os.path.join(root, file) in ipaList:
continue
ipaPath = os.path.join(root, file)
print(ipaPath)
ipaList.append(ipaPath)
shutil.copy2(ipaPath, os.path.join(ipaDir, file))
print(f"[+] Extracted new IPA {file} to {ipaDir}")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment