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

Uploaded Source

Built Distribution

pyiosbackup-0.2.1-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pyiosbackup-0.2.1.tar.gz
Algorithm Hash digest
SHA256 074c3fd5c8cf4d17f7041e2e6dd785c2affd106611c6f1e0bee1a09c2e0203d4
MD5 e1f0b569afa37f222a60cdcd9b105303
BLAKE2b-256 311ff42eb9c3d77f2605da4dac9916145b87eb9635a271f085de71947f0654d8

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for pyiosbackup-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dbed1618e6817fb846d8d4415dd86e5457cdaf5c9cc699f7949b61677ac52237
MD5 6877a448995fc7bddd23af665b94f412
BLAKE2b-256 30fffb7ef26c4ab2d6cdfbbcb717268ee70c36cca105270f14eceb1c760304cf

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