Skip to content
This repository was archived by the owner on Oct 3, 2023. It is now read-only.

Add full t8010 support#3

Open
Cryptiiiic wants to merge 2 commits intoLinusHenze:masterfrom
Cryptiiiic:master
Open

Add full t8010 support#3
Cryptiiiic wants to merge 2 commits intoLinusHenze:masterfrom
Cryptiiiic:master

Conversation

@Cryptiiiic
Copy link

Tested by many people and works on all a10(so 7 and 7 plus, etc)(t8010).

@ghost
Copy link

ghost commented Oct 6, 2019

Hi @Cryptiiiic, how did you check the upload of unsigned images?

@Cryptiiiic
Copy link
Author

@kellermanrivero I had full control in irecovery. I set my nonce. (device is on 13.0).

@krisanovdev
Copy link

krisanovdev commented Oct 7, 2019

@Cryptiiiic I still can't send custom ibss via -f flag (iPhone 7).

@ghost
Copy link

ghost commented Oct 7, 2019

Me too, I tried upload both signed and unsigned iBSS / iBEC without success.

@Cryptiiiic
Copy link
Author

@kellermanrivero @Mrkris99 @kellermanrivero need to decrypt with img4 left decrypted, extract the raw from the decrypted, do the patches, change the info for the bootloader specific tag and output the im4p. Sign the im4p using an shsh blob. Tihmstar was talking about this on twitter.

@krisanovdev
Copy link

Why do i need to sign it? I mean if we in pwned dfu Mode then no shsh blobs should be required? Can you give us some details??

@Halo-Michael
Copy link

Also works for me(iPhone7).
D17CA25BCAFEB8CAA8613081C8E04800
576741E0F5BF73B6F8F72D3CE73E0718

@krisanovdev
Copy link

krisanovdev commented Oct 8, 2019

@Nalo-Michael
How did you realize what boot-nonce should you pass in sentenv to got NONC equals 8f3d00......?

@krisanovdev
Copy link

Also when I send custom ramdisk (3.4 GB, with irecovery -f) it stucks on 15%.

@513697696
Copy link

也适用于我(iPhone7)。
D17CA25BCAFEB8CAA8613081C8E04800
576741E0F5BF73B6F8F72D3CE73E0718
Can you give me a detailed tutorial? It's too difficult for a novice.

@krisanovdev
Copy link

Works for me.

@cakarlen
Copy link

@Mrkris99 What steps did you follow?

@sitay1
Copy link

sitay1 commented Nov 26, 2019

@Mrkris99 can you provide more details?

@krisanovdev
Copy link

@cakarlen @sitay1 I've just fakesigned ibss bootloader from iOS firmware (like #3 (comment))
and verified that it was consumed by securerom correctly.

@krisanovdev
Copy link

@Cryptiiiic Looks like there is an issue with writing to bootrom memory. I've tried next script:
`
BOOTSTRAP_TASK_LR = 0x1800a9f68 # address in stack where the code should return to, after calling getDFUImage
DFU_BOOL = 0x180088AC0 # dfu_done (see handle_interface_request)
DFU_NOTIFY = 0x10000AEE8 # event_signal (see handle_interface_request)
DFU_STATE = 0x180088AF0 # dfu_event (see handle_interface_request)
TRAMPOLINE = 0x1800AC000 # see L_boot_trampoline_dst --> last const after main or the value returned by platform_get_boot_trampoline()

device.write_memory(TRAMPOLINE, checkm8.asm_arm64_branch(TRAMPOLINE, TRAMPOLINE + 0x400))
device.write_memory(TRAMPOLINE + 0x400, open('bin/t8010_shellcode_arm64.bin').read())
device.write_memory_ptr(BOOTSTRAP_TASK_LR, NAND_BOOT_JUMP)
device.write_memory(DFU_BOOL, '\x01')
device.execute(0, DFU_NOTIFY, DFU_STATE)
print 'Booted.'
`
And there is fail on device.write_memory(TRAMPOLINE, checkm8.asm_arm64_branch(TRAMPOLINE, TRAMPOLINE + 0x400))

@Cryptiiiic
Copy link
Author

Cryptiiiic commented Dec 2, 2019

./ipwndfu -p
python rmsigchks.py
irecovery -f RANDOMFILE_TO_RESET_TRANSFER
irecovery -f iBSS.patched.img4
wait 5ish seconds
irecovery -f iBEC.patched.img4
irecovery -c "go"
wait 5ish seconds
profit
@Mrkris99 should work fine, for that type of bootrom thing, you will need offsets and sizes only obtainable by dynamic analysis. Most likely need a debug cable.

@sitay1
Copy link

sitay1 commented Dec 4, 2019 via email

@Cryptiiiic
Copy link
Author

Cryptiiiic commented Dec 4, 2019

@sitay1 t8010 iPhone9,1 (7) 13.0 using 13.0 bootloaders(iBSS, iBEC)

@sitay1
Copy link

sitay1 commented Dec 5, 2019 via email

@pharaoh1
Copy link

./ipwndfu -p
python rmsigchks.py
irecovery -f RANDOMFILE_TO_RESET_TRANSFER
irecovery -f iBSS.patched.img4
wait 5ish seconds
irecovery -f iBEC.patched.img4
irecovery -c "go"
wait 5ish seconds
profit
@Mrkris99 should work fine, for that type of bootrom thing, you will need offsets and sizes only obtainable by dynamic analysis. Most likely need a debug cable.

Are the same steps working with Iph X???

@Cryptiiiic
Copy link
Author

@pharaoh1 stop

ghost pushed a commit to lunaynx/ipwndfu that referenced this pull request Feb 18, 2022
[WIP] Myriad changes, see comments
@frankl1m
Copy link

frankl1m commented May 6, 2022

Exploit for t8011 is a full headache, 1 lucky attempt of 30 :( work too bad on pad7,4

@Sawen1981
Copy link

Does anyone know where I can find documentation on patching DeviceTree?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants