Skip to content

feat(simulator): support ASLR-safe grouped uprobes - #11

Open
matthewrossi wants to merge 1 commit into
mainfrom
avoid-disabling-aslr
Open

feat(simulator): support ASLR-safe grouped uprobes#11
matthewrossi wants to merge 1 commit into
mainfrom
avoid-disabling-aslr

Conversation

@matthewrossi

Copy link
Copy Markdown
Collaborator

Replace the ASLR-disabled execution model with ELF-relative signal addresses resolved in userspace at model startup.

Start the model under ptrace, wait for its post-exec stop, derive its load bias from /proc//maps and ELF load segments, populate eBPF maps with runtime addresses, then detach before normal execution.

Keep the uprobe-multi READS/WRITES configuration format, validate hook symbols and ELF data addresses, and fix group-cookie handling for multiple write groups. Simplify the eBPF program to use resolved runtime addresses directly.

Update demo configurations with instruction-boundary offsets for the local model binaries, add relocation/ptrace lifecycle tests, remove the ASLR-disabling Make target, and document the new configuration workflow.

Replace the ASLR-disabled execution model with ELF-relative signal addresses resolved in userspace at model startup.

Start the model under ptrace, wait for its post-exec stop, derive its load bias from /proc/<pid>/maps and ELF load segments, populate eBPF maps with runtime addresses, then detach before normal execution.

Keep the uprobe-multi READS/WRITES configuration format, validate hook symbols and ELF data addresses, and fix group-cookie handling for multiple write groups. Simplify the eBPF program to use resolved runtime addresses directly.

Update demo configurations with instruction-boundary offsets for the local model binaries, add relocation/ptrace lifecycle tests, remove the ASLR-disabling Make target, and document the new configuration workflow.
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

Successfully merging this pull request may close these issues.

1 participant