Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Providing support for iOS 12 devices #98

Open
oct-test opened this issue Jan 31, 2019 · 3 comments
Open

Providing support for iOS 12 devices #98

oct-test opened this issue Jan 31, 2019 · 3 comments

Comments

@oct-test
Copy link

oct-test commented Jan 31, 2019

Recently, I am trying to make modifications to the InflatableDonkey git repo to make it compatible with iOS 11.4+ backups.

So far, I am able to login into the iCloud servers (even for 2FA accounts) and fetch the list of snapshots taken by each device. The code is generating following error when I try to fetch records using "ManifestID":

operationCost: 1
response {
      operationUUID: "3d3aba80-db4c-48e2-8cf2-1e141a1ca7da"
      type: NONE_TYPE
      last: true
    }
    result {
      code: FAILURE
      error {
        serverError {
          type: NOT_FOUND
        }
        errorDescription: "Error code: NOT_FOUND"
        errorKey: "ck1744ip5"
      }
    }

Questions:
I would like to understand what the above error exactly represents and which areas I can look to fix this issue?

Please let me know if any more information is required. I would appreciate any suggestions and thoughts on this topic.

Let's make this tool alive again! @horrorho , @Aliasr ,@dirkwirth , @Blokh

@alexicloud
Copy link

@oct-test could you please share your knowledge.how you modify your script to run on 2FA accounts.
please help me on this.

@Galeneius
Copy link

@oct-test , did you generated the 2FA token via webcalls or extracted it from an Manifest.plist? As far as I can see it's like the code expired at some time e.g not valid anymore. Perhaps there is an extra layer in 11.4 backups that prevents the call to fetch the records.

On a similar note, with accounts lower than 11.4 and having 2FA, does your method work? Else if you do not have such a test case can I perhaps try it out? Sitting on 10.X version, but with 2FA, I am not able to download backups either (apprehending the 2FA code with --token does not retrieve the mmauthtoken) so maybe it's a globally thing or we can exclude certain things. Please let me know.

@lgrimani
Copy link

Hi - I have a few questions about iOS12 backups, wondering if anyone here knows.

Does the ManifestKey/BackupKeybag change completely with each incremental differential backup? I tested this a few times and sometimes it doesn't change at all and sometimes some of the contents of the BackupKeybag change but its not clear to me how and when.

Once Manifest.DB is decrypted, does each encrypted file have its own unique key that needs to be generated from each row in the Files table?

Finally, when entries are removed from the Files table, are they removed completely from the SQLite database or is it just hidden by a delete flag (and hence recoverable)?

I am trying to decrypt encrypted files from one backup ago where a newer Manifest.DB/Manifest.plist has overwritten the old one. None of the commercial solutions support this so I've been trying to hack my way through it

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants