avibrazil / iOSbackup

A Python 3 class that reads and extracts files from a password-encrypted iOS backup created by iTunes on Mac and Windows. Compatible with iOS 14. Class works on Linux too.
222 stars 38 forks source link

Include support for ios older than 10.2 #10

Closed hcleves closed 3 years ago

hcleves commented 3 years ago

Changed the key derivation method to include the older key derivation method, used before the iOS 10.2. Based on the info available at https://irq5.io/2017/03/07/cracking-itunes-backup-passwords-with-hashcat/.

Before iOS 10.2, the manifest.db is not encrypted at all, so there is no Key "ManifestKey" available on the Manifest.plist. So, I added some conditionals to avoid getting KeyError when opening an older backup.

I tested on both and ios 10.1.1 backup and an ios 13 backup.