Enable strict Android W^X for Frida 17.16.4 releases - #19
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--strict-wxmode for Frida-owned Android mappingsRoot cause and fix
Physical-device snapshots isolated persistent anonymous RWX mappings in three paths: the Frida Core bootstrap allocation, Gum/Java bridge code finalization, and libffi closure storage used by
NativeCallback.The patch preserves the upstream bootstrap ABI while applying staged host-side protection changes, restores generated code to RX, and copies immutable NativeCallback closure code into a dedicated RX page while retaining libffi's writable metadata in RW memory. Protection failures fail closed and clean up allocations. Explicit user-script requests for RWX remain explicit and are not rewritten.
Validation
git diff --checkpass0e1a53ba7ab7615e6c8cc0cf1ee4fc45ab7d0722and Frida Gum7eddbb15847ac18c15d21ae1cff48103acd944d5509e00a9a68f1427e06596d2ec96f44e5082d386succeeded: run 30078412111SHA256SUMS; build metadata records Frida 17.16.4,android-arm64, extended patches, and strict W^XAndroid 15 issue #5 remains open until the reporter can retest the resulting release on Android 15.