Skip to content
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

When targeting iOS14 or later, denyFishHook may not work #117

Open
p-x9 opened this issue Apr 5, 2024 · 1 comment
Open

When targeting iOS14 or later, denyFishHook may not work #117

p-x9 opened this issue Apr 5, 2024 · 1 comment

Comments

@p-x9
Copy link
Contributor

p-x9 commented Apr 5, 2024

If the symbols given to denyFishHook are defined in binaries targeting iOS14 or later, it may not work.

Currently, symbols are searched based on binding information obtained from LC_DYLD_INFO. However, if targeting iOS14 or later, by default, it must be obtained from LC_DYLD_CHAINED_FIXUPS.
https://github.com/qyang-nj/llios/blob/main/dynamic_linking/chained_fixups.md

Here is an example of a tried and tested implementation.
https://github.com/p-x9/swift-anti-fishhook

I tried to fix it to send a pull request to this repository, but I noticed that the existing FishHook and exports trie parsing also needed some fixes.
(When the official fishhook was used, it succeeded, but in some cases it failed in the current implementation.)

I will add more information as soon as I have it.
Thank you

@r3ggi
Copy link
Collaborator

r3ggi commented Apr 17, 2024

Thanks for the help, I have just accepted your PR :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants