Skip to content

Commit

Permalink
this readme's got old
Browse files Browse the repository at this point in the history
  • Loading branch information
jakeajames authored Jul 6, 2019
1 parent 0ffaf4a commit 55c9cf5
Showing 1 changed file with 10 additions and 14 deletions.
24 changes: 10 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,28 +16,24 @@ Library with commonly used patches in open-source jailbreaks. Call this a (light
# Issues
- AMFID patch won't resist after app enters background. Fix would be using a daemon (like amfidebilitate) or injecting a dylib (iOS 11)

# iOS 12 satus
- rootFS remount is broken. There is hardening on snapshot_rename() which *can* and *has* been (privately) bypassed, but it for sure isn't as bad as last year with iOS 11.3.1, where they made **major** changes. The only thing we need is figuring out how they check if the snapshot is the rootfs and not something in /var for example where snapshot_rename works fine.
- kexecute() is also probably broken on A12. Use bazad's PAC bypass which offers the same thing, so this isn't an issue (fr now)
- getting root, unsandboxing, NVRAM lock/unlock, setHSP4(), trustbin(), entitlePid + task_for_pid() are all working fine. The rest that is not on top of my mind should also work fine.

## Codesign bypass
- Patching amfid should be a matter of getting task_for_pid() working. (Note: on A12 you need to take a completely different approach, bazad has proposed an amfid-patch-less-amfid-bypass in here https://github.com/bazad/blanket/tree/master/amfidupe, which will probably work but don't take my word for it). As for the payload dylib, you can just sign it with a legit cert and nobody will complain about the signature. As for unsigned binaries, you'll probably have to sign them with a legit cert as well, due to CoreTrust, or just add to trustcache.
# iOS 12 status
- ~~rootFS remount is broken. There is hardening on snapshot_rename() which *can* and *has* been (privately) bypassed, but it for sure isn't as bad as last year with iOS 11.3.1, where they made **major** changes. The only thing we need is figuring out how they check if the snapshot is the rootfs and not something in /var for example where snapshot_rename works fine.~~ Use unc0ver's code if you need the remount, I will probably add it along some bigger update

# Credits

- theninjaprawn & xerub for patchfinding
- xerub & Electra team for trustcache injection
- xerub for the original patchfinding code
- theninjaprawn for some patchfinders
- xerub for the original trustcache injection technique
- stek29 for nvramunlock & lock and hsp4 patch
- theninjaprawn & Ian Beer for dylib injection
- Luca Todesco for the remount patch technique
- Umang Raghuvanshi for the original remount idea
- pwn20wnd for the implementation of the rename-APFS-snapshot technique
- Luca Todesco for the original remount patch technique
- Umang Raghuvanshi for the rename-APFS-snapshot remount idea
- pwn20wnd for the oiriginal implementation of the rename-APFS-snapshot technique
- AMFID dylib-less patch technique by Ian Beer reworked with the patch code from Electra's amfid_payload (stek29 & coolstar)
- rootless-hsp4 idea by Ian Beer. Implemented on his updated async_wake exploit
- Sandbox exceptions by stek29 (https://stek29.rocks/2018/01/26/sandbox.html)
- Sandbox exceptions by stek29 (https://stek29.rocks/2018/01/26/sandbox.html) (& a few fixes by me for iOS 12+)
- CSBlob patching with stuff from Jonathan Levin and xerub
- Symbol finding by me ;) (https://github.com/jakeajames/kernelSymbolFinder)
- Symbol finding (https://github.com/jakeajames/kernelSymbolFinder) & the CoreTrust bypass technique by me ;)
- The rest of patches are fairly simple and shouldn't be considered property of anyone in my opinion. Everyone who has enough knowledge can write them fairly easily

And, don't forget to tell me if I forgot to credit anyone!

0 comments on commit 55c9cf5

Please sign in to comment.