-
-
Notifications
You must be signed in to change notification settings - Fork 19
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
[FEATURE] Support for Advanced Data Protection (iCloud Encryption) #20
Comments
Did you have a chance to take a look at this? |
A bit, yes. From Apple's website:
I haven't turned on the advanced data protection mode yet. If you have Advanced Data Protection turned on, can you help with following questions -
|
I already found the answer to point 1 and it’s not looking great:
https://support.apple.com/en-us/102630 I don’t see this feature to make a lot of sense if one has to constantly approve any kind of access. |
After manual logout it asks for 2FA every time. I tested it using a Windows virtual machine as well and it seems to behave the same as on Apple devices. So only way to get this working seems to be if the session does never expire... |
Yeah, I am wondering if it is worth the effort to enable this feature in |
I agree. Turning on more security features (like this one) will significantly degrade UX for applications built with |
The iCloud for windows app seems to remain permanently authenticated with support for Advanced Data Protection, I'm not a pro but I wonder if one could use a mitm proxy like burpsuite to intercept the traffic and see what's going on during the authentication stage, if icloudpy could behave similar to the desktop app rather than icloud.com sessions it could solve both the MFA challenge/expiry and advanced data protection problems |
@harveybolton Intercepting traffic won't give us the information we need. With HTTPS, all traffic is e2e encrypted. Once it leaves the application process, we will see encrypted traffic. Only way is to reverse-engineer the iCloud Windows client. I am guessing iCloud Windows client is shipped as binary code. If that's the case, it's a monumental effort (a.k.a. not worth) to decompile the executable. |
So bad news? Unimplementable so far? |
Yeah. There's not enough ROI yet. |
Too bad. But understandable. Seems like currently distributed via Microsoft Store. But I suppose it’s an exe file…what else do you use on windows? |
I don't use iCloud client on Windows. I just browse icloud.com. |
You could ask around on Mastodons/Xitters security research community if anyone ever tried to reverse engineer the iCloud Windows client with ADP enabled. |
Tbh for this to work going forward it’ll need to use Anisette Data to login so you don’t have to always enter a 2FA code and it authorizes you as a device. That part is mostly done. The real challenge is API calls for iCloud. It’s possible CloudKit would work in this scenario but I’ve been doing a local rework of it using my fork. Auth works. Rest needs to be redone 😂 |
Yeah, I have been looking into that as well (did a bit of reverse engineering of Windows iCloud client). I didn't get time to try out some experiments yet. If auth works using anisette data, what's the problem that you're facing with iCloud.com API calls? |
Yea some calls can be different. But for anisette login, a good example is used in pypush since it supports accounts that are both developer organization accounts and have ADP enabled. Basically took that. I’d love to DM you on it and see if its workable since time is pretty stretched out atm. |
Woah would be so amazing when I could backup/sync my iCloud with my NAS with ADP on. Thanks a lot for answering =) =). |
@drpoutine Sounds great. Please send me an IM on Discord. |
any updates for this? |
subscribing, but also double-checking if you're still investigating this one, and need any help/testers. |
as this is still open And My last information with testing it 10 months ago: |
Use case
Now that Apple has rolled out Advanced Data protection globally it's only a matter of time before the masses adopt it and it has potential to be enabled by default for new iCloud accounts soon enough, it would be great to get this project compatible with ADP for people already using it and those who will start to use it in future.
Describe the solution you'd like
Being able to download iCloud photos that are end to end encrypted.
Describe alternatives you've considered
Disabling ADP, but this is less desirable as it's a long overdue feature from Apple
Additional context
If you have ADP enabled on your iCloud account, this is what happens after authenticating (with 2FA) with this project:
The text was updated successfully, but these errors were encountered: