Skip to main content

A python parser for iOS backups

Project description

Python application Pypi version Language grade: Python

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

pyiosbackup-0.0.1.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

pyiosbackup-0.0.1-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file pyiosbackup-0.0.1.tar.gz.

File metadata

  • Download URL: pyiosbackup-0.0.1.tar.gz
  • Upload date:
  • Size: 21.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for pyiosbackup-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a2e0e709d960d87f5f1ac12505651af9e4c0157eb72bb764796f8dc519156269
MD5 31b7954cb15c597df098d83d93dfd171
BLAKE2b-256 7be2eaec8d472a10d3a4bde112fa5455a9823be36a3d3f7e7a2a852d743ecf83

See more details on using hashes here.

File details

Details for the file pyiosbackup-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pyiosbackup-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for pyiosbackup-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0fe33110a785120eecf601206ae1dadea03eca1e1b50a1b1468b270e848da7ef
MD5 de8fe5f55b98c69069c86434765192e1
BLAKE2b-256 fc935bbea6fec4e081cb33957ad174ac000a62b6fd5b99d2b340d0b458058d3d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page