Coder Social home page Coder Social logo

tihmstar / futurerestore Goto Github PK

View Code? Open in Web Editor NEW
847.0 847.0 277.0 192 KB

A hacked up idevicerestore wrapper, which allows specifying SEP and Baseband for restoring

License: GNU Lesser General Public License v3.0

Makefile 1.36% Shell 0.52% M4 3.97% C++ 94.15%

futurerestore's People

Contributors

0x9fff00 avatar diatrus avatar matteyeux avatar nikias avatar s0uthwest avatar tihmstar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

futurerestore's Issues

Does restore work on ubuntu

If so I saw tutorials on kali Linux but can it be ported for ubuntu if so can't it also be done with mingw on windows I know you said it's not yet supported on windows neither Linux but thinking that it's cpp and gcc only compiles I think c and obj-c can an updated library make it compatible ?

issue on futurerestore to downgrade 10.2 from 10.2.1

when itry to downgrade from 10.2.1 to 10.2 its shown this error

./futurerestore_macos -t 2985776024748_iPhone8,2_N66AP_10.2-14C92.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n66.RELEASE.im4p -m BuildManifest.plist -w iPhone_5.5_10.2_14C92_Restore.ipsw
# ## Version: b35d3e1 - 90
[Error] argument parsing failed! agrc=12 optind=10

can you advise what the issue please.

Error=-20 Devicenonce does not match APTicket nonce

Im trying to upgrade from 9.3.3--> 10.2 using my saved SHSH2 tickets on a 6S+.
having done all the other steps correctly I'm stuck at:

Any idea where the problem is?

Many thanks!!!

./futurerestore_macos -t iPhone8,2_HELLO_14C92.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n66m.RELEASE.im4p -m BuildManifest.plist iPhone_5.5_10.2_14C92_Restore.ipsw
Version: b35d3e1 - 90
futurerestore init done
reading ticket iPhone8,2_HELLO_14C92.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[WARNING] failed to read BasebandGoldCertID from device! Is it already in recovery?
[WARNING] using tsschecker's fallback to get BasebandGoldCertID. This might result in invalid baseband signing status information
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Recovery mode
Device already in Recovery mode
Found device in Recovery mode
Identified device as n66map, iPhone8,2
INFO: device serial number is HELLO
[Error] Devicenonce does not match APTicket nonce
[Error] maybe you forgot -w ?
Done: restoring failed.
Failed with errorcode=-20

#The tsschecker tool gives me this:
Apnonce: a0b5c2125bc452599acd8f23f9d16d1402d74c9b
Build Number: 14C92
Board Configuration: n66map
Restore Behaviour: Erase
Rosi Tag: true

[IMG4TOOL] file is valid!

arg :--verify
Version: 17060e500a853a9b4ed860f246d3aa0a90258e31 - 85
Version: 0
MANB
MANP: MANP: ------------------------------
BNCH: BNCH: a0b5c2125bc452599acd8f23f9d16d1402d74c9b
BORD: BORD: 6
CEPO: CEPO: 1
CHIP: CHIP: 32771
CPRO: CPRO: true
CSEC: CSEC: true
ECID: ECID: HELLO
SDOM: SDOM: 1
snon: snon: a0b5c2125bc452599acd8f23f9d16d1402d74c9b
srvn: srvn: 0683fab915f7689d2aa3d72fc2c15c8330515e30

[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware

IM4M is valid for the given BuildManifest for the following restore:
BuildNumber : 14C92
BuildTrain : Corry
DeviceClass : n66map
FDRSupport : YES
RestoreBehavior : Erase
Variant : Customer Erase Install (IPSW)

[IMG4TOOL] file is valid!

Segmentation fault: 11

[TSSC] opening Mav10-5.32.00.Release.bbfw
Entity: line 1: parser error : Start tag expected, '<' not found
PK
^
[Error] [TSSR] ERROR: device wasn't specified and could not be fetched from BuildManifest
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,2
Segmentation fault: 11

Compilation fails

On linux, I get this with gcc and clang:

g++ -DHAVE_CONFIG_H -I. -I..    -I/usr/include/libxml2 -I/usr/lib64/libzip/include -I/usr/local/include -I/usr/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/include/libusb-1.0 -I../external/tsschecker/tsschecker -I../external/img4tool/img4tool -I../external/idevicerestore/src -std=c++11 -g -O2 -MT futurerestore-futurerestore.o -MD -MP -MF .deps/futurerestore-futurerestore.Tpo -c -o futurerestore-futurerestore.o `test -f 'futurerestore.cpp' || echo './'`futurerestore.cpp
futurerestore.cpp: In member function ‘int futurerestore::doRestore(const char*, bool)’:
futurerestore.cpp:301:114: error: ‘getBuildidentityWithBoardconfig’ was not declared in this scope
 entityWithBoardconfig(buildmanifest, client->device->hardware_model, noerase)))
                                                                             ^
futurerestore.cpp:304:122: error: ‘getBuildidentityWithBoardconfig’ was not declared in this scope
 tyWithBoardconfig(_sepbuildmanifest, client->device->hardware_model, noerase)))
                                                                             ^
futurerestore.cpp:307:126: error: ‘getBuildidentityWithBoardconfig’ was not declared in this scope
 hBoardconfig(_basebandbuildmanifest, client->device->hardware_model, noerase)))
                                                                             ^
futurerestore.cpp:464:13: error: ‘struct idevicerestore_client_t’ has no member named ‘basebandBuildIdentity’
     client->basebandBuildIdentity = getBuildidentity(_basebandbuildmanifest, getDeviceModelNoCopy(), 0);
             ^~~~~~~~~~~~~~~~~~~~~
futurerestore.cpp:466:19: error: ‘struct idevicerestore_client_t’ has no member named ‘basebandBuildIdentity’
     if (!_client->basebandBuildIdentity)
                   ^~~~~~~~~~~~~~~~~~~~~

Abort trap 6: malloc: *** error for object 0x7f82fad00a50: pointer being freed was not allocated

Had this error from the latest futurerestore build (compiled on my own from this GitHub source)

MBP-di-Andrea:Downgrade benti$ futurerestore -t 4868990219897894_iPhone8,1_10.1.1-14B150.shsh -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist —s sep-firmware.n71m.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.1.1_14B150_Restore.ipsw
Found device in Recovery mode
Device already in Recovery mode
INFO: device serial number is (DELETED)
waiting for nonce: dc 87 f6 4b 77 39 fd df 4f 9f 32 d3 d5 07 df ed a1 7f 8e 9c
Got ApNonce from device: dc 87 f6 4b 77 39 fd df 4f 9f 32 d3 d5 07 df ed a1 7f 8e 9c
Device has requested ApNonce now
done
futurerestore(13989,0x7fffdd2953c0) malloc: *** error for object 0x7f82fad00a50: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

Futurerestore_macos permission denied

Can someone help ? this is with the new file

./futurerestore_macos –t 4016551287718438_iPad5,1_j96ap_10.2-14C92.shsh2 –b Mav7Mav8-7.21.00.Release.bbfw –pBuildManifest.plist –s sep-firmware.j82.RELEASE.im4p.plist –m BuildManifest.plist –w iPad_64bit_TouchID_10.2_14C92_Restore.ipsw
-bash: ./futurerestore_macos: Permission denied

[Error] argument parsing failed! agrc=14 optind=2

Hi, I tried restore my ip 5s to ios 10.2 but i'm getting those error, please help.

./futurerestore_macos –t /Users/xer/Desktop/Downgrade/first.shsh –b /Users/xer/Desktop/Downgrade/Mav7Mav8-7.21.00.Release.bbfw –p /Users/xer/Desktop/Downgrade/BuildManifest.plist –s /Users/xer/Desktop/Downgrade/sep-firmware.n51.RELEASE.im4p –m /Users/xer/Desktop/Downgrade/BuildManifest.plist –w -d iPhone_4.0_64bit_10.2_14C92_Restore.ipsw Version: b35d3e1245da49950028d753b1bdb40fce5d21d5 - 90 [Error] argument parsing failed! agrc=14 optind=2 argv[0]=./futurerestore_macos argv[1]=-d argv[2]=–t argv[3]=/Users/xer/Desktop/Downgrade/first.shsh argv[4]=–b argv[5]=/Users/xer/Desktop/Downgrade/Mav7Mav8-7.21.00.Release.bbfw argv[6]=–p argv[7]=/Users/xer/Desktop/Downgrade/BuildManifest.plist argv[8]=–s argv[9]=/Users/xer/Desktop/Downgrade/sep-firmware.n51.RELEASE.im4p argv[10]=–m argv[11]=/Users/xer/Desktop/Downgrade/BuildManifest.plist argv[12]=–w argv[13]=iPhone_4.0_64bit_10.2_14C92_Restore.ipsw

is there anything wrong with my command ?

Help NO IM4M loaded

this is with the old file:

./futurerestore –t 4016551287718438_iPad5,1_j96ap_10.2-14C92.shsh2 –b Mav7Mav8-7.21.00.Release.bbfw –pBuildManifest.plist –s sep-firmware.j81.RELEASE.im4p –m BuildManifest.plist –w iPad_64bit_TouchID_10.2_14C92_Restore.ipsw -w

Found device in Recovery mode
Device already in Recovery mode
[Error] No IM4M loaded
libc++abi.dylib: terminating with uncaught exception of type int
Abort trap:

Iphone 5s downgrade Nonce

How long does it take to find the nonce and restore it to iphone 5s 10.2 from 10.2.1? Help

How lone does the process takes?

Error -55 when trying to restore to iOS 10.2 from 9.3.3

Im trying to update to iOS 10.2 from iOS 9.3.3 on my iPhone 6s+, but when i run future restore i get Error -55. Here is the screenshot of what shows in terminal.
This is what I'm running in terminal after setting the nonce with nonceEnabler: /futurerestore -t 7375184523592_iPhone8,2_n66ap_10.2-14C92.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n66.RELEASE.im4p -m BuildManifest.plist restore102.ipsw

screen shot 2017-01-26 at 6 09 50 pm

Unable to get BasebandFirmware node / unable to find BbGoldCertId

futurerestore -t 14B150.shsh2 -b memes -p BuildManifest.plist -s sep-firmware.n56.RELEASE.im4p -m BuildManifest.plist -w iPhone_5.5_10.1.1_14B150_Restore.ipsw
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,1
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,1 (wrong model, should be 7,1)
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
[TSSC] opening bbgcid.json
[DOWN] downloading file http://api.tihmstar.net/bbgcid?condensed=1
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
TSS server returned: STATUS=126&MESSAGE=An internal error occurred.
ERROR: TSS request failed (status=126, message=An internal error occurred.)
Sending TSS request attempt 1... [Error] baseband firmware isn't signed

Program then halts, --latest-baseband causes same issue. Still signed (10.2), so issue is probably due to the program using the first property it finds in the BuildManifest which causes problems when two (or more) models are present?

Not sure how to fix. Advice appreciated.

Trying to Downgrade from 10.2.1 to 10.2, I seem to have no collisions

I even tried using all the saved SHSH2 files saved, any luck I will get a collision still running it, its been 2hrs thus far

Version: 6aa188c - 89
futurerestore init done
reading ticket apt1.shsh2 done
reading ticket apt2.shsh2 done
reading ticket apt3.shsh2 done
reading ticket apt4.shsh2 done
reading ticket apt5.shsh2 done
reading ticket apt6.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Normal mode
Entering recovery mode...
INFO: device serial number is ;)
waiting for nonce: 0d c4 48 24 06 96 86 6b 0c c1 b2 ac 3e ca 4c e2 2a f1 1c b3
waiting for nonce: 42 c8 8f 5a 7b 75 bc 94 4c 28 8a 72 15 39 1d c9 c7 3b 6e 9f
waiting for nonce: 35 2d fa d1 71 38 34 f4 f9 4c 5f f3 c3 e5 e9 94 77 34 7b 95
waiting for nonce: 60 3b e1 33 ff 0b df a0 f8 3f 21 e7 41 91 cf 67 70 ea 43 bb
waiting for nonce: 98 04 d9 9e 85 bb af d4 bb 11 35 a1 04 47 73 b4 df 9f 1b a3
waiting for nonce: 67 c7 de 71 ce ca ba 13 73 ba 5c 5d ce 2c b6 e4 ae 12 ae bc
Got ApNonce from device: ba ad fe df 43 9d 50 ae 06 1c 8a 3f 65 15 86 f4 94 36 f0 38
Got ApNonce from device: 6e 2e 24 23 1d 1e 70 1f 7e d8 fd 2f ae 10 02 17 0e eb db 1d
Got ApNonce from device: 75 d4 46 94 43 4b 20 ca ec 06 17 ce 11 5a e7 f6 05 1f 52 e9
Got ApNonce from device: f9 5d ed a5 39 d8 92 f2 4d 3b 63 1e 5b bd 21 40 67 1e 59 3a
Got ApNonce from device: 82 90 96 ae ef ef f1 4c d7 29 71 dc 1b b0 72 19 8c cc f3 00
Got ApNonce from device: 8e 62 2c 6a 8f 1b 81 5f c1 ea 79 ee 3c 98 c3 57 33 bc c7 c8
Got ApNonce from device: 02 22 b0 19 92 e6 dc e5 da ed b8 75 9f 90 30 d4 0c f6 a5 9e
Got ApNonce from device: 48 27 07 fb a5 5f 7b c5 4d 29 68 5d 79 06 4c 6c 2d 79 26 17
Got ApNonce from device: f8 23 79 d6 3b ee 7f 37 21 a0 2f 03 f4 a5 09 df ee 23 70 e2
Got ApNonce from device: f1 ee 70 aa bf 6b c0 5e 2c ea ce 7d 84 da a4 5e cb f3 7c 33
Got ApNonce from device: 59 13 b5 5a b1 70 c7 c1 8b 34 10 8d 02 ca 7c 9a be 57 d7 5e
Got ApNonce from device: 8f ce 49 e5 c4 6c ec b4 77 1c 3b a7 8c b8 1f b6 7c 1e 7b 0f
Got ApNonce from device: 3e 05 0a 0c f4 b2 55 48 b8 35 e5 4b ef 14 a2 59 d8 9f d5 4e
Got ApNonce from device: 4e 10 db 1a 4a 6d 13 84 92 6f 73 ac 0a 37 4c 20 4f fa 15 e2

I can't downgrade

./futurerestore_osx -t 2296988119901222_iPhone7,2_n61ap_10.2-14C92.shsh2 -b Mav10-5.32.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n61.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.2_14C92_Restore
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,1
Segmentation fault: 11

I've been 2 days trying to downgrade from 10.2.1 to 10.2, had several issues that managed to resolve, but now im stuck on this issue just about when it's gonna do the process. I did everything well but , I don't know if the ticket [TSSR] is requesting is a wrong one(it should be 7,2)... for the collision to start happening until it maches...or i am wrong? P.D. I am very interested of doing the process, any help? please?

Puts my device into recovery mode and then says "Unable to place device into recovery mode from Normal mode"

I get the following:

$ ../.futurerestore-install/bin/futurerestore -t ../shsh-i6s/10.1.1/apnonce-0dc448240696866b0cc1b2ac3eca4ce22af11cb3/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 -t ../shsh-i6s/10.1.1/apnonce-352dfad1713834f4f94c5ff3c3e5e99477347b95/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 -t ../shsh-i6s/10.1.1/apnonce-42c88f5a7b75bc944c288a7215391dc9c73b6e9f/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 -t ../shsh-i6s/10.1.1/apnonce-603be133ff0bdfa0f83f21e74191cf6770ea43bb/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 -t ../shsh-i6s/10.1.1/apnonce-9804d99e85bbafd4bb1135a1044773b4df9f1ba3/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 -b Mav10-5.32.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n71.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.1.1_14B150_Restore.ipsw
Version: bdc7cc1542c5fecb9ddac4c9134a0c546687caa9 - 52
futurerestore init done
reading ticket ../shsh-i6s/10.1.1/apnonce-0dc448240696866b0cc1b2ac3eca4ce22af11cb3/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 done
reading ticket ../shsh-i6s/10.1.1/apnonce-352dfad1713834f4f94c5ff3c3e5e99477347b95/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 done
reading ticket ../shsh-i6s/10.1.1/apnonce-42c88f5a7b75bc944c288a7215391dc9c73b6e9f/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 done
reading ticket ../shsh-i6s/10.1.1/apnonce-603be133ff0bdfa0f83f21e74191cf6770ea43bb/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 done
reading ticket ../shsh-i6s/10.1.1/apnonce-9804d99e85bbafd4bb1135a1044773b4df9f1ba3/3903291615516_iPhone8,1_10.1.1-14B150.shsh2 done
Did set sep+baseband path and firmware
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Normal mode
Entering recovery mode...

At this point my device rebooted and then entered recovery mode. Then futurerestore hung for a while. Finally,

ERROR: Unable to connect to device in recovery mode
ERROR: Unable to enter recovery mode
[Error] Unable to place device into recovery mode from Normal mode
[Error] Fail code=-2
Failed with errorcode=-2
$ 

Then I have to flash 10.2 from itunes to make the phone boot again.

futurerestore fails after the 25th try to get the same appnonce

I'm trying to downgrade from 10.2.1 to 10.1.1 (to build 14B150)
every time it fails at the 25th try. And device is still in recovery mode but doesn't reboot

$ futurerestore -t iPhone8,1_10.1.1-14B150.shsh -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n71.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.1.1_14B150_Restore.ipsw
Version: bdc7cc1542c5fecb9ddac4c9134a0c546687caa9 - 67
futurerestore init done
reading ticket iPhone8,1_10.1.1-14B150.shsh done
Did set sep+baseband path and firmware
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Normal mode
Entering recovery mode...
INFO: device serial number is BRUH
waiting for nonce: 5f 29 b4 62 78 eb 9d b0 9e 13 4f 5a e6 75 34 9d 6a 22 87 bd
Got ApNonce from device: bc 86 06 88 04 28 a8 eb 6b 28 88 83 1d 9f 35 c5 70 29 51 96
Got ApNonce from device: 10 ec 4f 12 25 4b d8 97 44 7c ef d4 ec 78 12 35 ff 90 04 7f
Got ApNonce from device: cd 1b 96 09 8b 17 9c b2 bb f5 9e 06 48 82 e4 f1 d7 52 30 98
Got ApNonce from device: c0 a2 35 79 50 d6 5a 84 e8 4e 76 53 e3 19 5c 07 ec 3c 9c dc
Got ApNonce from device: d2 46 eb 52 c2 e3 ad 80 aa b2 d9 b8 87 ae 33 e3 97 8c 4f fa
Got ApNonce from device: a6 45 8f bc 3f 3b c5 ad 4f e5 5f ea 40 c8 e3 ea a5 32 65 62
Got ApNonce from device: c6 c7 3b 27 3d 9d fb e0 f5 c1 e6 c1 b7 a0 1d cf 02 07 34 a8
Got ApNonce from device: ea c4 b7 c2 5a 85 ff 68 24 94 f2 a9 50 6a 87 3f bb 12 1b e5
Got ApNonce from device: 0c d6 45 aa f0 a0 98 da 12 1d a4 a9 fb a9 71 0b e2 f2 d5 98
Got ApNonce from device: 57 b5 1a 3f 85 0a f6 75 b0 02 e1 31 c8 a6 c7 f3 72 fd 81 45
Got ApNonce from device: 32 a3 be 10 4e bf fc e7 90 c7 11 83 20 27 51 42 93 2a 6c a6
Got ApNonce from device: 53 a0 bc b0 e9 7e d3 49 d8 09 ee 6b 6e b0 9d cb 22 59 e5 a2
Got ApNonce from device: 1b 42 af 94 e9 07 82 85 13 db 70 e5 a9 cb d1 2d 86 97 b2 e0
Got ApNonce from device: f4 93 1e 26 32 18 bc 5a d1 8b 8b 65 e6 cc 79 9f 73 99 0e ec
Got ApNonce from device: b6 76 bb 3d 0b 43 f0 b3 2e 6c d0 54 02 f9 de 0e 2c 44 c9 4b
Got ApNonce from device: 80 b7 4c 77 00 51 7b 39 38 bc b1 fe 01 ea 59 17 0d 25 37 36
Got ApNonce from device: 10 68 f5 2f 87 95 ee 25 54 9a e7 8d 4d a9 df 99 81 15 2f 40
Got ApNonce from device: e3 84 5d fb 6f ea a7 58 84 23 de 08 9e 20 1d 79 c9 17 20 5b
Got ApNonce from device: 5c d4 67 a8 7a 62 96 be 99 3b 68 fd ec 6f f1 d2 4e 08 b1 07
Got ApNonce from device: 6c ff 8d 66 7e 12 f8 52 10 a8 f5 70 a1 ed af 4e 84 20 83 fa
Got ApNonce from device: b7 4c e3 df 36 e4 1f a9 5d 5c 1d ea 8b 41 75 54 77 7c d8 d4
Got ApNonce from device: 2c df 5d 3e 6f b9 44 c4 26 b1 1e e0 56 85 de 6f 8b 37 87 0e
Got ApNonce from device: 15 bc 66 10 6c c2 29 80 3f 28 34 0e 26 dd fb 61 42 06 d1 b6
Got ApNonce from device: e7 78 69 19 02 e5 c7 89 1b b9 2c 8d 49 19 4e c3 c9 3a cb f2

[Error] argument parsing failed!

Hello, I installed all dependencies but when I try to use this code,

"./futurerestore –t iPhone7,2_10.2-14C92.shsh –b Mav10-5.32.00.Release.bbfw –p BuildManifest.plist –s sep-firmware.n61.RELEASE.im4p –m BuildManifest.plist –w iPhone_4.7_10.2_14C92_Restore.ipsw"

The terminal says,

"Version: 89b0193 - 87
[Error] argument parsing failed! agrc=13 optind=1"

What Should I do? Thank you.

libcrypto.35.dylib not loaded

Probably just my own retardation but here goes:

Running on 10.10.1 I get the following error

$ ./futurerestore_osx 
dyld: Library not loaded: /usr/lib/libcrypto.35.dylib
  Referenced from: /Users/alucard/Desktop/s/./futurerestore_osx
  Reason: image not found
Trace/BPT trap: 5

Tried running brew install openssh, but that didn't do much. Yippee

Linux Building Issue (Debain 7)

When I execute 'make' in the 'futurerestore/' directory and got the response:

root@localhost:/home/eclipse/.iOS/futurerestore# make
make all-recursive
make[1]: Entering directory '/home/eclipse/.iOS/futurerestore'
Making all in external/idevicerestore
make[2]: Entering directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
make all-recursive
make[3]: Entering directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
Making all in src
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore/src'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore/src'
Making all in docs
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore/docs'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore/docs'
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
make[3]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
make[2]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/idevicerestore'
Making all in external/img4tool
make[2]: Entering directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
make all-recursive
make[3]: Entering directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
Making all in img4tool
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/img4tool/img4tool'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/img4tool/img4tool'
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
make[3]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
make[2]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/img4tool'
Making all in external/tsschecker
make[2]: Entering directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
make all-recursive
make[3]: Entering directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
Making all in tsschecker
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/tsschecker/tsschecker'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/tsschecker/tsschecker'
make[4]: Entering directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
make[4]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
make[3]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
make[2]: Leaving directory '/home/eclipse/.iOS/futurerestore/external/tsschecker'
Making all in futurerestore
make[2]: Entering directory '/home/eclipse/.iOS/futurerestore/futurerestore'
g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/include/libxml2 -I/usr/lib/x86_64-linux-gnu/libzip/include -I/usr/local/include -I/usr/include/libxml2 -I/usr/local/include -I/usr/local/include -I/usr/include/libusb-1.0 -I../external/tsschecker/tsschecker -I../external/img4tool/img4tool -I../external/idevicerestore/src -std=c++11 -g -O2 -MT futurerestore-futurerestore.o -MD -MP -MF .deps/futurerestore-futurerestore.Tpo -c -o futurerestore-futurerestore.o test -f 'futurerestore.cpp' || echo './'futurerestore.cpp
futurerestore.cpp: In member function ‘int futurerestore::doRestore(const char*, bool)’:
futurerestore.cpp:336:13: error: ‘struct idevicerestore_client_t’ has no member named ‘bbfwtmp’
client->bbfwtmp = (char*)_basebandPath;
^
futurerestore.cpp:453:36: error: ‘struct idevicerestore_client_t’ has no member named ‘sepnonce’
get_sep_nonce(client, &client->sepnonce, &client->sepnonce_si
^
futurerestore.cpp:453:55: error: ‘struct idevicerestore_client_t’ has no member named ‘sepnonce_size’
get_sep_nonce(client, &client->sepnonce, &client->sepnonce_si
^
futurerestore.cpp:467:63: error: ‘struct idevicerestore_client_t’ has no member named ‘septss’
get_tss_response(client, sep_build_identity, &client->septss) < 0
^
futurerestore.cpp:472:13: error: ‘struct idevicerestore_client_t’ has no member named ‘basebandBuildIdentity’
client->basebandBuildIdentity = getBuildidentity(_basebandbui
^
futurerestore.cpp:474:19: error: ‘struct idevicerestore_client_t’ has no member named ‘basebandBuildIdentity’
if (!_client->basebandBuildIdentity)
^
futurerestore.cpp:478:19: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdatasize’
if (!_client->sepfwdatasize || !_client->sepfwdata)
^
futurerestore.cpp:478:46: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
if (!_client->sepfwdatasize || !_client->sepfwdata)
^
futurerestore.cpp:495:22: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
safeFree(client->sepfwdata);
^
futurerestore.cpp:46:27: note: in definition of macro ‘safeFree’
#define safeFree(buf) if (buf) free(buf), buf = NULL
^
futurerestore.cpp:495:22: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
safeFree(client->sepfwdata);
^
futurerestore.cpp:46:37: note: in definition of macro ‘safeFree’
#define safeFree(buf) if (buf) free(buf), buf = NULL
^
futurerestore.cpp:495:22: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
safeFree(client->sepfwdata);
^
futurerestore.cpp:46:43: note: in definition of macro ‘safeFree’
#define safeFree(buf) if (buf) free(buf), buf = NULL
^
futurerestore.cpp: In member function ‘void futurerestore::loadSep(const char*)’:
futurerestore.cpp:623:14: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdatasize’
_client->sepfwdatasize = ftell(fsep);
^
futurerestore.cpp:626:20: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
if (!(_client->sepfwdata = (char*)malloc(_client->sepfwdatasi
^
futurerestore.cpp:626:55: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdatasize’
if (!(_client->sepfwdata = (char*)malloc(_client->sepfwdatasi
^
futurerestore.cpp:629:24: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdata’
if (fread(_client->sepfwdata, 1, _client->sepfwdatasize, fsep
^
futurerestore.cpp:629:47: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdatasize’
if (fread(_client->sepfwdata, 1, _client->sepfwdatasize, fsep
^
futurerestore.cpp:629:80: error: ‘struct idevicerestore_client_t’ has no member named ‘sepfwdatasize’
pfwdata, 1, _client->sepfwdatasize, fsep) != _client->sepfwdatasi
^
Makefile:451: recipe for target 'futurerestore-futurerestore.o' failed
make[2]: *** [futurerestore-futurerestore.o] Error 1
make[2]: Leaving directory '/home/eclipse/.iOS/futurerestore/futurerestore'
Makefile:419: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/eclipse/.iOS/futurerestore'
Makefile:351: recipe for target 'all' failed
make: *** [all] Error 2

Now my idevicerestore (which is a separate libimobiledevice issue) experiences a core dump on execution. (I'm fixing that issue which hopefully will resolve this, but if you see anything else in my log that would make the install fail can you let me know please).

What should I do?

Puts my device into recovery mode then says "Unable to place device into recovery mode from Normal mode"

Like #21, but this is on an iphone 5s.

$ ../.futurerestore/bin/futurerestore -t /home/elronnd/ios/shsh-i5s/10.2/apnonce-0dc448240696866b0cc1b2ac3eca4ce22af11cb3/7762269402704_iPhone8,1_10.2-14C92.shsh2 -t /home/elronnd/ios/shsh-i5s/10.2/apnonce-352dfad1713834f4f94c5ff3c3e5e99477347b95/7762269402704_iPhone8,1_10.2-14C92.shsh2 -t /home/elronnd/ios/shsh-i5s/10.2/apnonce-42c88f5a7b75bc944c288a7215391dc9c73b6e9f/7762269402704_iPhone8,1_10.2-14C92.shsh2 -t /home/elronnd/ios/shsh-i5s/10.2/apnonce-603be133ff0bdfa0f83f21e74191cf6770ea43bb/7762269402704_iPhone8,1_10.2-14C92.shsh2 -t /home/elronnd/ios/shsh-i5s/10.2/apnonce-9804d99e85bbafd4bb1135a1044773b4df9f1ba3/7762269402704_iPhone8,1_10.2-14C92.shsh2 -b Mav7Mav8-7.21.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n53.RELEASE.im4p -m BuildManifest.plist -w ../Downloads/iPhone_4.0_64bit_10.2_14C92_Restore.ipsw
Version: 6aa188cd06789de1573263aa301a4242db044ceb - 89
futurerestore init done
reading ticket /home/elronnd/ios/shsh-i5s/10.2/apnonce-0dc448240696866b0cc1b2ac3eca4ce22af11cb3/7762269402704_iPhone8,1_10.2-14C92.shsh2 done
reading ticket /home/elronnd/ios/shsh-i5s/10.2/apnonce-352dfad1713834f4f94c5ff3c3e5e99477347b95/7762269402704_iPhone8,1_10.2-14C92.shsh2 done
reading ticket /home/elronnd/ios/shsh-i5s/10.2/apnonce-42c88f5a7b75bc944c288a7215391dc9c73b6e9f/7762269402704_iPhone8,1_10.2-14C92.shsh2 done
reading ticket /home/elronnd/ios/shsh-i5s/10.2/apnonce-603be133ff0bdfa0f83f21e74191cf6770ea43bb/7762269402704_iPhone8,1_10.2-14C92.shsh2 done
reading ticket /home/elronnd/ios/shsh-i5s/10.2/apnonce-9804d99e85bbafd4bb1135a1044773b4df9f1ba3/7762269402704_iPhone8,1_10.2-14C92.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Normal mode
Entering recovery mode...
ERROR: Unable to connect to device in recovery mode
ERROR: Unable to enter recovery mode
[Error] Unable to place device into recovery mode from Normal mode
[Error] Fail code=-2
Failed with errorcode=-2

ERROR: Device is in an invalid state

I was trying to restore my iPhone 5S to 10.2 from 9.3.3 and I was using NonceEnabler.
I've tried manually enter the recovery mode by setting auto-boot and reboot or automatically by futurerestore.
No matter which method I used when it gets into the recovery mode it will stuck at sending iBEC.
following is the log"

./futurerestore_macos -t dummy_iPhone6,2_10.2-14C92.shsh2 -b Mav7Mav8-7.21.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n53.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.0_64bit_10.2_14C92_Restore.ipsw

Version: 6aa188cd06789de1573263aa301a4242db044ceb - 89
futurerestore init done
reading ticket dummy_iPhone6,2_10.2-14C92.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Normal mode
Entering recovery mode...
INFO: device serial number is dummy SN
waiting for nonce: dummy match
Got ApNonce from device: dummy match
Device has requested ApNonce now
Found device in Recovery mode
Identified device as n53ap, iPhone6,2
Extracting BuildManifest from IPSW
Product Version: 10.2
Product Build: 14C92 Major: 14
Device supports Image4: true
checking APTicket to be valid for this restore...
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
Verified APTicket to be valid for this restore
Variant: Customer Erase Install (IPSW)
This restore will erase your device data.
Using cached filesystem from 'iPhone_4.0_64bit_10.2_14C92_Restore/058-54548-094.dmg'
Extracting iBEC.n53.RELEASE.im4p...
Personalizing IMG4 component iBEC...
Sending iBEC (627863 bytes)...
Getting SepNonce failed
ERROR: Device is in an invalid state
Getting ApNonce failed
ERROR: Device is in an invalid state
ERROR: Device is in an invalid state
Segmentation fault: 11

iPhone 6 restore_is_current_device: device 7d800d4f674fef7ef586b48f5d2103b8718f8ad5 is not in restore mode error when restoring

Last login: Tue Jan 31 17:19:26 on ttys001
Hacks-MacBook-Pro:~ hackme$ /Users/hackme/Desktop/downgrade/futurerestore -t /Users/hackme/Desktop/downgrade/3614582318028886_iPhone7,2_10.2-14C92.shsh2 -b /Users/hackme/Desktop/downgrade/Mav13-2.41.00.Release.bbfw -p /Users/hackme/Desktop/downgrade/BuildManifest.plist -s /Users/hackme/Desktop/downgrade/sep-firmware.n61.RELEASE.im4p -m /Users/hackme/Desktop/downgrade/BuildManifest.plist -w /Users/hackme/Desktop/downgrade/iPhone_4.7_10.2.ipsw
Version: 89b0193 - 87
futurerestore init done
reading ticket /Users/hackme/Desktop/downgrade/3614582318028886_iPhone7,2_10.2-14C92.shsh2 done
[TSSC] opening /Users/hackme/Desktop/downgrade/BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware

[WARNING] failed to read BasebandGoldCertID from device! Is it already in recovery?
[WARNING] using tsschecker's fallback to get BasebandGoldCertID. This might result in invalid baseband signing status information
[TSSC] opening /Users/hackme/Desktop/downgrade/BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Recovery mode
Device already in Recovery mode
INFO: device serial number is your face
waiting for nonce: e6 a4 88 c5 f1 a9 77 16 d3 4c f6 2c 39 6a de 4f 87 c2 e2 e2
Got ApNonce from device: e6 a4 88 c5 f1 a9 77 16 d3 4c f6 2c 39 6a de 4f 87 c2 e2 e2
Device has requested ApNonce now
Found device in Recovery mode
Identified device as n61ap, iPhone7,2
Extracting BuildManifest from IPSW
Product Version: 10.2
Product Build: 14C92 Major: 14
Device supports Image4: true
checking APTicket to be valid for this restore...
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=ftap
[Warning] getBuildIdentityForIM4M: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=rfta
[Warning] getBuildIdentityForIM4M: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
Verified APTicket to be valid for this restore
Variant: Customer Erase Install (IPSW)
This restore will erase your device data.
Using cached filesystem from '/Users/hackme/Desktop/downgrade/iPhone_4.7_10.2/058-54986-095.dmg'
Extracting iBEC.n61.RELEASE.im4p...
Personalizing IMG4 component iBEC...
Sending iBEC (632436 bytes)...
Getting SepNonce in recovery mode... c4 76 74 06 14 3f e8 c2 92 1f 94 41 28 ce e5 bc fb 49 3e ad
Getting ApNonce in recovery mode... e6 a4 88 c5 f1 a9 77 16 d3 4c f6 2c 39 6a de 4f 87 c2 e2 e2
Recovery Mode Environment:
iBoot build-version=iBoot-3406.30.8
iBoot build-style=RELEASE
Sending RestoreLogo...
Extracting applelogo@2x~iphone.t7000.im4p...
Personalizing IMG4 component RestoreLogo...
Sending RestoreLogo (12116 bytes)...
ramdisk-size=0x10000000
Extracting 058-54560-094.dmg...
Personalizing IMG4 component RestoreRamDisk...
Sending RestoreRamDisk (40330739 bytes)...
Extracting DeviceTree.n61ap.im4p...
Personalizing IMG4 component RestoreDeviceTree...
Sending RestoreDeviceTree (123929 bytes)...
Extracting kernelcache.release.n61...
Personalizing IMG4 component RestoreKernelCache...
Sending RestoreKernelCache (12368816 bytes)...
Trying to fetch new SHSH blob
WARNING: Unable to find BbSkeyId node
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Received SHSH blobs
About to restore device...
Waiting for device...
restore_is_current_device: device 7d800d4f674fef7ef586b48f5d2103b8718f8ad5 is not in restore mode
restore_is_current_device: device 8e4d5a0a50b5436d2a65b7eb7d08f2a644a93d67 is not in restore mode
restore_is_current_device: device 8e4d5a0a50b5436d2a65b7eb7d08f2a644a93d67 is not in restore mode
ERROR: Unable to connect to device in restore mode
ERROR: Unable to open device in restore mode
[Error] ERROR: Unable to restore device
Done: restoring failed.
Failed with errorcode=-11

iPhone 6s (n71ap) ios 9.0.2 - tfp0 enabled using cl0ver - Stuck at "Waiting for device"

I have followed this tutorial while enabling tfp0 on 9.0.2 using cl0ver on iphone 6s (n71ap).
Then I encountered an issue with futurerestore where it stuck on "Waiting for device" after it flashed green. It stays like that for a while then the device goes black and reboot to recovery. Not really sure if the blobs are bad or there is a bug with futurerestore. Tools run inside vmware player macos 10.12.


img4tool log:

techs-Mac:PMG tech$ ./img4tool_macos -s blob.shsh2 -v BuildManifest_102.plist
Version: 17060e500a853a9b4ed860f246d3aa0a90258e31 - 85
Version: 0
MANB
MANP: MANP: ------------------------------
BNCH: BNCH: 86220036e9f179879f7acd95a93b1837937053b6
BORD: BORD: 4
CEPO: CEPO: 1
CHIP: CHIP: 32768
CPRO: CPRO: true
CSEC: CSEC: true
ECID: ECID: 1050375866060
SDOM: SDOM: 1
snon: snon: cbbbb39ce6e2f60f1b4b686f1683d6c2096cfd64
srvn: srvn: 5824a7e5c72405245b09d61c4aa901cead9b3121

[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=rfta
[Warning] hasBuildidentityElementWithHash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=rfta
[Warning] hasBuildidentityElementWithHash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=ftap
[Warning] getBuildIdentityForIM4M: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=rfta
[Warning] getBuildIdentityForIM4M: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware

IM4M is valid for the given BuildManifest for the following restore:
BuildNumber : 14C92
BuildTrain : Corry
DeviceClass : n71ap
FDRSupport : YES
RestoreBehavior : Erase
Variant : Customer Erase Install (IPSW)

[IMG4TOOL] file is valid!


futurerestore log:

techs-Mac:PMG tech$ ./futurerestore_macos -t blob.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest_1021.plist -s sep-firmware.n71.RELEASE.im4p -m BuildManifest_1021.plist -w targeted.ipsw
Version: b35d3e1 - 90
futurerestore init done
reading ticket blob.shsh2 done
[TSSC] opening BuildManifest_1021.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[WARNING] failed to read BasebandGoldCertID from device! Is it already in recovery?
[WARNING] using tsschecker's fallback to get BasebandGoldCertID. This might result in invalid baseband signing status information
[TSSC] opening BuildManifest_1021.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Recovery mode
Device already in Recovery mode
INFO: device serial number is DNPQ9RTYGRYC
waiting for nonce: 86 22 00 36 e9 f1 79 87 9f 7a cd 95 a9 3b 18 37 93 70 53 b6
Got ApNonce from device: 86 22 00 36 e9 f1 79 87 9f 7a cd 95 a9 3b 18 37 93 70 53 b6
Device has requested ApNonce now
Found device in Recovery mode
Identified device as n71ap, iPhone8,1
Extracting BuildManifest from IPSW
Product Version: 10.2
Product Build: 14C92 Major: 14
Device supports Image4: true
checking APTicket to be valid for this restore...
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=rfta
[Warning] hasBuildidentityElementWithHash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=rfta
[Warning] hasBuildidentityElementWithHash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] findAnyBuildidentityForFilehash: skipping element=ftap
[Warning] findAnyBuildidentityForFilehash: skipping element=ftsp
[Warning] findAnyBuildidentityForFilehash: skipping element=rfta
[Warning] findAnyBuildidentityForFilehash: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=ftap
[Warning] getBuildIdentityForIM4M: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=rfta
[Warning] getBuildIdentityForIM4M: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
Verified APTicket to be valid for this restore
Variant: Customer Erase Install (IPSW)
This restore will erase your device data.
Extracting filesystem from IPSW
[==================================================] 100.0%
Extracting iBEC.n71.RELEASE.im4p...
Personalizing IMG4 component iBEC...
Sending iBEC (333507 bytes)...
waiting for device to reconnect...
Getting SepNonce in recovery mode... af ee 54 c1 50 05 82 98 35 5a f8 a7 f0 36 b6 98 6f ce 5d b3
Getting ApNonce in recovery mode... 86 22 00 36 e9 f1 79 87 9f 7a cd 95 a9 3b 18 37 93 70 53 b6
Recovery Mode Environment:
iBoot build-version=iBoot-3406.30.8
iBoot build-style=RELEASE
Sending RestoreLogo...
Extracting applelogo@2x~iphone.s8000.im4p...
Personalizing IMG4 component RestoreLogo...
Sending RestoreLogo (12195 bytes)...
ramdisk-size=0x10000000
Extracting 058-54560-094.dmg...
Personalizing IMG4 component RestoreRamDisk...
Sending RestoreRamDisk (40330818 bytes)...
Extracting DeviceTree.n71ap.im4p...
Personalizing IMG4 component RestoreDeviceTree...
Sending RestoreDeviceTree (132848 bytes)...
Extracting kernelcache.release.n71...
Personalizing IMG4 component RestoreKernelCache...
Sending RestoreKernelCache (12592991 bytes)...
Trying to fetch new SHSH blob
WARNING: Unable to find BbSkeyId node
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Received SHSH blobs
About to restore device...
Waiting for device...
ERROR: Unable to connect to device in restore mode
ERROR: Unable to open device in restore mode
[Error] ERROR: Unable to restore device
Done: restoring failed.
Failed with errorcode=-11

[Error] argument parsing failed! agrc=13 optind=1

Hello!
./futurerestore_macos –t iPhone6,2_9.3.3-13G34.shsh –b Mav7Mav8-6.02.00.Release.bbfw –p BuildManifest.plist –s sep-firmware.n53.RELEASE.im4p –m BuildManifest.plist –w iPhone6,2_9.3.3_13G34_Restore.ipsw
returns this error:
Version: 6aa188c - 89
[Error] argument parsing failed! agrc=13 optind=1

Error while compiling futurestore on Ubuntu 16.04

Got this error while compiling.
here is a log ;)

$ make
source='futurerestore.cpp' object='futurerestore-futurerestore.o' libtool=no \
DEPDIR=.deps depmode=none /bin/bash ../depcomp \
g++ -DHAVE_CONFIG_H -I. -I..    -I/usr/local/include -I/usr/lib/x86_64-linux-gnu/libzip/include -I/usr/local/include -I/usr/local/include -I../external/tsschecker/tsschecker -I../external/img4tool/img4tool -I../external/idevicerestore/src -std=c++11 -g -O2 -c -o futurerestore-futurerestore.o `test -f 'futurerestore.cpp' || echo './'`futurerestore.cpp
futurerestore.cpp: In member function ‘int futurerestore::doRestore(const char*, bool)’:
futurerestore.cpp:329:335: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
                                                                                                                                                                                                                 char* p = strrchr((const cha
                                                                                                                                                                                                                                  ^
futurerestore.cpp: In member function ‘char* futurerestore::getLatestManifest()’:
futurerestore.cpp:517:637: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
                                                                                                                                                                                                              while((bpos = strstr(versVals.v
                                                                                                                                                                                                                                  ^
futurerestore.cpp: In member function ‘void futurerestore::loadAPTicket(const char*)’:
futurerestore.cpp:187:174: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
                                                                                                                                                       fread(buf, fSize, 1, f);
                                                                                                                                                                              ^
futurerestore.cpp: In member function ‘int futurerestore::doRestore(const char*, bool)’:
futurerestore.cpp:440:578: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
                                                                                                                                                                                    fread(client->sepfwdata, 1, client->sepfwdatasize, fsep);

futurerestore.cpp: In static member function ‘static void* futurerestore::loadPlistFromFile(const char*)’:
futurerestore.cpp:653:787: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
                                                                                                                                                                                                                   fread(buf, 1, bufSize, f);

Makefile:450 : la recette pour la cible « futurerestore-futurerestore.o » a échouée
make: *** [futurerestore-futurerestore.o] Erreur 1

restore 10.2 error abort trap 6

So I had a jailbreaking issue with my iPod 6, then I wanted to restore 10.2 to re-jailbreak when I wrote .\futurerestore_macos this is an error "abort trap:6 " I tried everything but nothing actually happened it's still the same.

libimobiledevice version

nick@nick-ubuntulap:~/prometheus/futurerestore$` ./configure
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/bin/bash: /home/nick/prometheus/futurerestore/missing: No such file or directory
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libplist... yes
checking for libzip... yes
checking for libimobiledevice... no
configure: error: Package requirements (libimobiledevice-1.0 >= 1.2.1) were not met:

Requested 'libimobiledevice-1.0 >= 1.2.1' but version of libimobiledevice is 1.2.0

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables libimobiledevice_CFLAGS
and libimobiledevice_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

This is my log^

says libimobiledevice is an outdated version but thats the most up to date version I could find....

Any help appreciated.

Nick.

Ipad4,8 iPad Mini 3 (Cellular) isn't documented

i get ERROR: device "iPad4,8" is not in bbgcid.json, Which means it's BasebandGoldCertID isn't documented yet, is there any chance to support this device, thanks for your help

I Believe the id is 3554301762 (retrieved from redsnow)

iPhone 6 Plus updating from 9.3.3 to 10.2 device does not restore.

Version: b35d3e1 - 90
futurerestore init done
reading ticket 7165337494308902_iPhone7,1_n56ap_10.2-14C92.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[WARNING] failed to read BasebandGoldCertID from device! Is it already in recovery?
[WARNING] using tsschecker's fallback to get BasebandGoldCertID. This might result in invalid baseband signing status information
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Recovery mode
Device already in Recovery mode
INFO: device serial number is F2LNT01RG5QK
waiting for nonce: 75 61 8d 23 09 6a c3 40 fd fc 02 29 0f 64 45 18 fa 57 1b 48
Got ApNonce from device: 75 61 8d 23 09 6a c3 40 fd fc 02 29 0f 64 45 18 fa 57 1b 48
Device has requested ApNonce now
Found device in Recovery mode
Identified device as n56ap, iPhone7,1
Extracting BuildManifest from IPSW
Product Version: 10.2
Product Build: 14C92 Major: 14
Device supports Image4: true
checking APTicket to be valid for this restore...
[Warning] findAnyBuildidentityForFilehash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=ftap
[Warning] getBuildIdentityForIM4M: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=ftap
[Warning] hasBuildidentityElementWithHash: skipping element=ftsp
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] getBuildIdentityForIM4M: skipping element=rfta
[Warning] getBuildIdentityForIM4M: skipping element=rfts
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
[Warning] hasBuildidentityElementWithHash: skipping element=BasebandFirmware
Verified APTicket to be valid for this restore
Variant: Customer Erase Install (IPSW)
This restore will erase your device data.
Using cached filesystem from 'iPhone_5.5_10.2_14C92_Restore/058-54339-094.dmg'
Extracting iBEC.n56.RELEASE.im4p...
Personalizing IMG4 component iBEC...
Sending iBEC (632436 bytes)...
waiting for device to reconnect... ....
Getting SepNonce in recovery mode... 27 38 1a 82 91 d3 96 ba ca 54 36 55 69 14 3f 72 2c 61 a5 46
Getting ApNonce in recovery mode... 75 61 8d 23 09 6a c3 40 fd fc 02 29 0f 64 45 18 fa 57 1b 48
Recovery Mode Environment:
iBoot build-version=iBoot-3406.30.8
iBoot build-style=RELEASE
Sending RestoreLogo...
Extracting applelogo@3x~iphone.t7000.im4p...
Personalizing IMG4 component RestoreLogo...
Sending RestoreLogo (18834 bytes)...
ramdisk-size=0x10000000
Extracting 058-54560-094.dmg...
Personalizing IMG4 component RestoreRamDisk...
Sending RestoreRamDisk (40330739 bytes)...
Extracting DeviceTree.n56ap.im4p...
Personalizing IMG4 component RestoreDeviceTree...
Sending RestoreDeviceTree (124133 bytes)...
Extracting kernelcache.release.n56...
Personalizing IMG4 component RestoreKernelCache...
Sending RestoreKernelCache (12368816 bytes)...
Trying to fetch new SHSH blob
WARNING: Unable to find BbSkeyId node
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Received SHSH blobs
About to restore device...
Waiting for device...
ERROR: Unable to connect to device in restore mode
ERROR: Unable to open device in restore mode
[Error] ERROR: Unable to restore device
Done: restoring failed.
Failed with errorcode=-11

The device will green screen, enter restore mode, freeze for a few minutes, then return to recovery mode.

TSS server returned: STATUS=126&MESSAGE=An internal error occurred.

Can't replicate with the following setup:

$ futurerestore -t iPhone8,1_10.1.1-14B150.shsh -b Mav13-2.41.00.Release.bbfw \
     -p BuildManifest.plist -s sep-firmware.n71.RELEASE.im4p -m BuildManifest.plist \
     -w iPhone8,1_4.7_10.1.1_14B150_Restore.ipsw

[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,1
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone8,1
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
[TSSC] opening bbgcid.json
[DOWN] downloading file http://api.tihmstar.net/bbgcid?condensed=1
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
TSS server returned: STATUS=126&MESSAGE=An internal error occurred.
ERROR: TSS request failed (status=126, message=An internal error occurred.)
Sending TSS request attempt 1... [Error] baseband firmware isn't signed

lib crypto error

Hi, I keep getting this error on futurerestore:

dyld: Library not loaded: /opt/local/lib/libcrypto.1.0.0.dylib
Referenced from: /Users/*******/Desktop/downgrade/./futurerestore_macos
Reason: image not found
Abort trap: 6

FutureRestore for Linux keeps throwing a segmentation fault

As far as I can tell, no one has gotten FutureRestore to work on Linux - made a Reddit post on /r/jailbreak to ask, tried to look for videos of people using it on Linux, but no. I can only find people who have had successes with macOS.

I'm using Bash for Windows, but it shouldn't be any different from running Ubuntu itself. I managed to get to the last step where I have to type the ./FutureRestore command, but then attempting to restore gives me a segmentation fault (core dumped) message. As far as I can tell, I am using the latest compiled version of FutureRestore (v90).

Screenshot:
https://gyazo.com/43c2243d33146df0ee8b31d4a1614f91

[Error]Unable to get BasebandFirmware node

Arbings-Mac:downgrade arbing$ ./futurerestore_macos -t 1_iPhone8,1_10.2-14C92.shsh2 -t 2_iPhone8,1_10.2-14C92.shsh2 -t 3_iPhone8,1_10.2-14C92.shsh2 -t 4_iPhone8,1_10.2-14C92.shsh2  -t 5_iPhone8,1_10.2-14C92.shsh2 -t 6_iPhone8,1_10.2-14C92.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n71.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.2_14C92_Restore.ipsw
Version: b35d3e1245da49950028d753b1bdb40fce5d21d5 - 90
futurerestore init done
reading ticket 1_iPhone8,1_10.2-14C92.shsh2 done
reading ticket 2_iPhone8,1_10.2-14C92.shsh2 done
reading ticket 3_iPhone8,1_10.2-14C92.shsh2 done
reading ticket 4_iPhone8,1_10.2-14C92.shsh2 done
reading ticket 5_iPhone8,1_10.2-14C92.shsh2 done
reading ticket 6_iPhone8,1_10.2-14C92.shsh2 done
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Did set sep+baseband path and firmware
[WARNING] failed to read BasebandGoldCertID from device! Is it already in recovery?
[WARNING] using tsschecker's fallback to get BasebandGoldCertID. This might result in invalid baseband signing status information
[TSSC] opening BuildManifest.plist
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
Found device in Recovery mode
Device already in Recovery mode

I've try to downgrade form 10.2.1 to 10.2 for about 2 days
but it seems not working
is this error cause this issur or I'm just doing ok ?

Tried to upgrade iPhone 6s to iOS 10.1.1 and futurerestore requests wrong baseband ticket

I entered command:
./futurerestore -t iPhone8,1_10.1.1-14B150.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n71m.RELEASE.im4p -m BuildManifest.plist -w iPhone_4.7_10.1.1_14B150_Restore.ipsw (Tried to upgrade my iPhone 6s (iPhone8,1) to iOS 10.1.1 with shsh2 blob that is confirmed to be valid (rosi tag found))

The result was:
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone7,2 (Wrong device, should be iPhone 8,1)
WARNING: Unable to find BbSkeyId node
[TSSR] User specified not to request a Baseband ticket.
Request URL set to https://gs.apple.com/TSS/controller?action=2
Sending TSS request attempt 1... response successfully received
[TSSC] opening BuildManifest.plist
[TSSR] requesting ticket for iPhone7,2 (Wrong device, should be iPhone 8,1)
WARNING: Unable to find BbSkeyId node
[TSSR] User specified to request only a Baseband ticket.
[TSSC] opening bbgcid.json
[DOWN] downloading file http://api.tihmstar.net/bbgcid?condensed=1
ERROR: Unable to get BasebandFirmware node
ERROR: Unable to find required BbGoldCertId in parameters
Request URL set to https://gs.apple.com/TSS/controller?action=2
TSS server returned: STATUS=126&MESSAGE=An internal error occurred.
ERROR: TSS request failed (status=126, message=An internal error occurred.)
Sending TSS request attempt 1... [Error] baseband firmware isn't signed

On build manifest of iOS 10.2 file, I found that n61ap was located above than n71map (iPhone 6s TSMC). Its first 34 lines were like this:

BuildIdentities ApBoardID 0x06 ApChipID 0x7000 ApSecurityDomain 0x01 BbActivationManifestKeyHash jLFe5MgAIZkHDZUAu4+xg7AnE6XKKmuS2151zhVTYYI= BbChipID 0x007F50E1 BbFDRSecurityKeyHash BbProvisioningManifestKeyHash u+/tcCwvaQ+1Y9t40I4yegCEmB28mALlaROhaIVGBWo= Info BuildNumber 14C92 BuildTrain Corry DeviceClass **n61ap**

GENERATING SAME NONCE

Everything works fine until futurerestore starts generating same nonce each time it reboots into recovery. downgrading from 10.2 to 10.1.1 iphone 6s+.
I have the shsh files. And here is my command

./futurerestore_macos -t 1.shsh2 -t 2.shsh2 -t 3.shsh2 -t 4.shsh2 -t 5.shsh2 -t 6.shsh2 -b Mav13-2.41.00.Release.bbfw -p BuildManifest.plist -s sep-firmware.n66.RELEASE.im4p -m BuildManifest.plist -w iPhone_5.5_10.1.1_14B150_Restore.ipsw

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.