-
Notifications
You must be signed in to change notification settings - Fork 26
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
VP9 entitlement spoofing does not work on jailed environment #8
Comments
Based on your wording, does this mean that even H.264 on <= 1080p videos is using software decoding if YouTube is sideloaded? |
@mihir-io H.264 isn't affected. |
Any progress on this? Or is it simply not possible? |
According to dyld source it is possible to replace functions in the shared cache with closures, not sure if it's possible to implement without a jailbreak though. Might be worth looking into |
@level3tjg Curious if there are any existing sample projects out there. |
Turns out plain interposing (storing interposing tuples in __DATA,__interpose) should actually generate a closure with the correct patch entries, however it only applies patches to the cache from the main executable's closure and when I tried it didn't seem to work. Fugu14 exploited a bug in dyld to pre-generate a closure to inject code into some processes but it looks like it was patched in 14.7 From Closure.h:
|
Calling |
It should pass YT checks since If |
@level3tjg Interesting. Can you maybe share the code about |
@level3tjg So how do you get the symbol for |
@PoomSmart I linked against CoreMedia and declared it as an external function |
@level3tjg I believe your trick introduces a side effect when VP9 decompression session is being created from YouTube app - it won't communicate to |
I don't think that's the case, even if you bypass the entitlement check by other means (with a jailbreak but sideloaded app) you'll still get the same outcome. |
I see. That probably means you tested hooking entitlement check function directly too. |
There are additional entitlement checks performed by |
The technique relies on
MSHookFunction()
which does nothing on sideloaded apps. As a result, no hardware decoder has ever worked on sidedloaded YouTube. We may be able to use fishhook instead.The text was updated successfully, but these errors were encountered: