A python parser for iOS backups
Project description
Description
pyiosbackup
is a utility created in order to parse and decrypt iOS backups.
Installation
Install the last released version using pip
:
python3 -m pip install --user -U pyiosbackup
Or install the latest version from sources:
git clone git@github.com:matan1008/pyiosbackup.git
cd pyiosbackup
python3 -m pip install --user -U -e .
Usage
CLI
Before decrypting a backup, you need to create one. You can use the amazing pymobiledevice3 to do that:
pymobiledevice3 backup2 encryption ON 1234 .
pymobiledevice3 backup2 backup --full .
After creating the backup, you can decrypt it:
pyiosbackup extract-all $BACKUP_FOLDER 1234 --target decrypted
You can also extract single files by their domain and relative path:
pyiosbackup extract-domain-path $BACKUP_FOLDER RootDomain Library/Preferences/com.apple.backupd.plist -p 1234
Or by their file id:
pyiosbackup extract-id $BACKUP_FOLDER a8323a1323d9cad416d8b44d87c8049de1adff25 -p 1234
You can also print some metadata about the backup:
pyiosbackup stats $BACKUP_FOLDER -p 1234
Python
Another way to access the functionality of the package is using python code.
For example, iterating over all files in a backup will look like:
from pyiosbackup import Backup
backup_path = 'BACKUP_PATH'
password = '1234'
backup = Backup.from_path(backup_path, password)
for file in backup.iter_files():
print(file.filename)
print(file.last_modified)
You can also access a specific file:
import plistlib
from pyiosbackup import Backup
backup_path = 'BACKUP_PATH'
password = '1234'
backup = Backup.from_path(backup_path, password)
backupd_plist = backup.get_entry_by_domain_and_path(
'RootDomain', 'Library/Preferences/com.apple.backupd.plist'
)
print(plistlib.loads(backupd_plist))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pyiosbackup-0.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e175ccaa636b1d0e4b5d3bd18d9e61587963e274994574cbca838c7609376a8 |
|
MD5 | 326b0a603316d34483369b329bd83396 |
|
BLAKE2b-256 | ca14347895df08946e49ede1621a9d0c413f8383f359229c8861ee11f459227c |