Skip to main content

A python parser for iOS backups

Project description

Python application Pypi version

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.2.3.tar.gz (49.2 kB view details)

Uploaded Source

Built Distribution

pyiosbackup-0.2.3-py3-none-any.whl (38.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyiosbackup-0.2.3.tar.gz
  • Upload date:
  • Size: 49.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for pyiosbackup-0.2.3.tar.gz
Algorithm Hash digest
SHA256 75f42213578046174af50a6ccb12ae22ecee22dc4ea370cf7af3f2bdd2efd504
MD5 01456bffa2676f19c614813d39954de6
BLAKE2b-256 e5042f0c27e78fd31c48f511ebbe9e335831d4b9859a619c3de2c765c6dc2254

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyiosbackup-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 38.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for pyiosbackup-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2e175ccaa636b1d0e4b5d3bd18d9e61587963e274994574cbca838c7609376a8
MD5 326b0a603316d34483369b329bd83396
BLAKE2b-256 ca14347895df08946e49ede1621a9d0c413f8383f359229c8861ee11f459227c

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