GithubHelp home page GithubHelp logo

Comments (18)

DerrickMartinez avatar DerrickMartinez commented on August 10, 2024 1

@marksims, It's not a donation/financial issue for her but rather an ethical one. Also, it isn't that hard really, a lot of the work is done but you need to implement some new protobuf types for iCloud. For example you'll probably want to start with CKDFetchRecordChangesOperation (213)

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

There are hacked versions of InflatableDonkey that do download iCloud photos and things like WhatsApp data, although the chats are now encrypted. It's all based on the iCloud protocol which InflatableDonkey and I understand.

I've not released additional iCloud projects as I'm struggling to find the spare time.

from inflatabledonkey.

nirlandau avatar nirlandau commented on August 10, 2024

Whatsapp data we already have unencrypted in the backup files so no reason to find it elsewhere.
Can you refer me to a hacked version?
Although I would like to have an official one made by the guru @horrorho (whenever you find the time)

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

The WhatsApp documents backup may available when there is no iCloud phone backup. It's an additional forensic option which is why I suspect WhatsApp encrypted them. Some data it still retrievable but I won't discuss it in detail otherwise they'll just patch it.

The hacked InflatableDonkey derivatives are not in the public domain. They're experimental versions that also contain some concept methods that could be abused quite heavily. If I get I time, I'll try and re-factor one of those derivatives to remove the offending code and release a jar only tool. Ideally I would try and add in the functionality to InflatableDonkey. Again, it's a time issue above all.

from inflatabledonkey.

nirlandau avatar nirlandau commented on August 10, 2024

A weird question: I installed a new iCloud account on my phone. The iCloud Photo Library feature was OFF. I did a backup. Then I downloaded the backup using InflatableDonkey and no pictures were there?
Is that normal?

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

Hi. It doesn't sound quite right. I don't have any iOS devices to play with so it's difficult to test and help. I can only suggest you make another backup attempt. It's possible there's a partial backup that's stuck in the system.

from inflatabledonkey.

Aliasr avatar Aliasr commented on August 10, 2024

Hi @horrorho! Is this something you are working on? Or do you already have an approximate release date? It would be a very handy feature for those who keep our Camera Roll separated from the backup. Thanks!

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

@Aliasr Sorry it's been on a low priority list. Maybe next month if I have time?

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

Update. I have started working on a new project that should address multiple concerns. It will be able to download photos and WhatsApp archives too. Unfortunately I'm away for May and it won't be ready before then.

from inflatabledonkey.

Aliasr avatar Aliasr commented on August 10, 2024

Welcome back @horrorho! Looking forward to your new project!

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

@Aliasr Hi. I haven't forgotten! It's finding the spare time issue. 😿

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

Ok. I've been giving this some serious thought. As I've stated above and re-iterated here I need to be mindful on not releasing a monster. In view of that, even with a massively restricted code base, I don't think I can deliver an open source solution that will not be hackable into a wider exploit tool. Sorry.

from inflatabledonkey.

Aliasr avatar Aliasr commented on August 10, 2024

Hi @horrorho! We're very sorry to hear you are not going to release your longed-for new project, albeit we must understand the reasons and implications for not doing so.

Nevertheless, I decided to create my own private iCloud Photo Library recovery tool, so a couple of weeks ago I started digging into how CloudKit works. Eventually I hope I will be able to code my own solution.

It would be of great help if you could briefly explain if there are important differences between recovering an iOS backup and other data such as iCloud photos or Whatsapp archives.

Thanks!

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

@Aliasr Modified versions use additional classes or a new advanced CloudKit layer as discussed here.

Due to behind the scenes turmoil, I've recently clarified that InflatableDonkey is for users accessing their own backups. Apple already provides tools for downloading iCloud photos. WhatsApp also provide functionality to recover chats.

from inflatabledonkey.

Aliasr avatar Aliasr commented on August 10, 2024

Thank you @horrorho. I'm sorry if I didn't explain myself properly, but that's not quite my case. I'm creating this tool for my personal use on my own backups / data.

I just needed to know if other apps (not only iCloud Photos or Whatsapp) use the same approach as backups do (protobufs, encryption, chunks, etc.), but I understand if you can't reveal such information.

I do not want to be misunderstood, your help and disposition have always been appreciated.

from inflatabledonkey.

horrorho avatar horrorho commented on August 10, 2024

Developers use the official CloudKit API. I would start there. Unmodified InflatableDonkey uses a very basic CloudKit layer that was reversed in a few days without having any previous knowledge of CloudKit. It works, but it's pretty naive. It only offers a couple of calls and without modification will not manage iCloud photos etc.

I've since gone on to write a private CloudKit layer that emulates the official API. This is a monster, not only in terms of capability but also the undocumented internal API it exposes. However, as it ignores certain security mechanisms and exposes hidden calls, it's open to abuse. There's also the expectation that it will be supported and if you've been following this repository you'll know that CloudKit is a moving target.

Essentially I use my CloudKit layer in the way an app developer would use the official CloudKit API, although I do have the option of doing certain things they cannot.

I understand this post is wonderfully vague and I've largely left you to your own devices. However, unless you really want the challenge, I would use the official tools to retrieve your iCloud photos and WhatsApp chats. That being said, if I can manage to reverse and code a CloudKit layer then there's little reason you cannot also.

P.S. As stated above, CloudKit WhatsApp chat databases have been encrypted for a while now. Photos/ documents/ videos are not. I haven't looked into the key retrieval mechanism. As a side note, thumbnails are not always deleted which exposes a minor flaw but I'm sure it will be patched at some point.

from inflatabledonkey.

Aliasr avatar Aliasr commented on August 10, 2024

Great! That's what I was looking for. Thanks @horrorho!

from inflatabledonkey.

marksims avatar marksims commented on August 10, 2024

@horrorho
hi, thanks for the info. i want the private cloudkit tool, and i'd like to make some donations to you for this project. is it possible? i want the cloudkit tool to download photos, videos, whatsapp etc

from inflatabledonkey.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.