-
Notifications
You must be signed in to change notification settings - Fork 477
Open
Labels
Description
The crash people are seeing is due to Substitute (the library that Chimera uses for hooking C functions) not supporting functions that are very short. I think if there's less than ~60 bytes of stack space available after the function prologue, Substitute will cause a crash.
Alternatives:
- Wait for Chimera to switch to a better hooking solution.
- Make Chimera use the hacky version of MobileSubstrate that unc0ver uses.
- Use an in-house function interposing technique that supports short functions. This technique works on functions as long as they're 5+ bytes: https://github.com/thomasfinch/CRuntimeFunctionHooker/blob/master/inject.c#L52
Originally posted by @EthanArbuckle in #63 (comment)