-
Notifications
You must be signed in to change notification settings - Fork 395
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
idevicerestore fails to restore iPhone 16 from normal mode. #683
Comments
Hi, I observed the same thing, and noticed that the img4 stitching has some extra entries. This has all to do with the new ApNonceSlotID and SepNonceID. Patch: https://gist.github.com/nikias/18aea0129e6029f4f6a5183a74929606 |
Updated the patch with latest changes. Still boot looping when restoring from normal mode... |
iPhone14 also fails in normal mode, but returns 168 error,recovery mode success. |
Can you run |
nothing there |
ok, then it must be something else |
I'm told that HomePod (AudioAccessory1,1) restore fails with the following:
|
Well, the error says the build identity doesn't contain |
Thank you for your continuous support. I'm checking the USB packet log by Apple Device app. I've modified RestoreOptions (just hard-coded to be the same as Apple Device app) and also append "-restore" to client->restore_boot_args, but no effect. Still boot-logo-loop after restore. |
The .ipsw file is built from the OTA and an Apple TV HD IPSW using the script that can be found here: https://github.com/tihmstar/homepodstuff It is possible that we need to be adding some properties to the .ipsw that we currently aren't. |
UniqueBuildID is "just" a GUID, just add something random there. |
If you manage to capture a full restore (and upload this somewhere...) I am happy to take a look.
I feel like somehow the personalized images have to be sent again somehow, but I don't see this in a restore process on macOS, so no idea how this would work... |
Yes, I have full USB capture of restore by Apple Device app on windows. It's captured by WIreshark/USBPcap. I'll try to pick up and upload the part you are interested if you give me instructions, keyword for search. |
Can you find out how many times you can locate the SEP image, it is na IMG4 image so |
I found Did it help? |
OK, so the first one is when it is booted from recovery mode to restore mode, and the second one is during restore mode as a response for the NORData request. So there is no further upload of the SEP image; there must be something else that is happening and we are not aware of... |
Hi, The result of finding 4304 ibec I hope I hope this helps. |
Looks all good... but still something must be happening differently. I would need to compare the full restore process; essentially we would need to compare all the images that are transferred (except I guess the large filesystem images) and see if there are any new additional requests or parameters shared. You already checked the RestoreOptions so I wouldn't know what else could be the issue... |
I realized that I didn't update the snid for the SepStage1 image. I moved the patch to this gist: https://gist.github.com/nikias/18aea0129e6029f4f6a5183a74929606 and have updated it just now to add the SepNonceSlotID from parameters when stitching |
This patch works well. Thank you so much. |
Oh wow so I guess I just forgot that one piece of code then. Thanks for confirming! I will merge this. |
@rekyagis I updated the patch once more, would you be able to run another restore from normal mode? If not I will just commit the changes and just hope it works fine :) |
The updated patch also works well. Thank you so much for your great work. |
Hello.
idevicerestore (the latest from GitHub) succeed to restore iPhone 16 from restore mode, but fails to restore from normal mode.
iPhone is disconnected suddenly after "Done sending NORData" and turn to restore mode if restore starts from normal mode.
The success log (from restore mode) is
recovery_success.txt
The fail log (from normal mode) is
normal_fail.txt
I found that SepNonce from normal mode is all-0xFF.
The log says "Getting SepNonce in normal mode... ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ".
We can retrieve SepNonce from ApParameters like this. (Apple Devices app on Windows seems to do this way.)
I've modified idevicerestore to use SepNonce from ApParameters, but it still fails.
Its log is
normal_fail2.txt
I think we should use the value of ApNonceSlotID, ApSikaFuse and SepNonceSlotID in ApParameters, but I haven't find how for now.
I also should check TSS requests, but I can't capture TSS requests created by Apple's software since recent version of Apple's software seems to reject mitmproxy's certificate.
Could someone give me some help?
Thanks in advance.
The text was updated successfully, but these errors were encountered: