google / google/gvisor

Missing systrap system call patching on ARM64

Open
#13,362 9 comments 0 reactions 0 assignees View on GitHub
type: enhancement
Dominant language
Go
Stars
19.3k
Forks
2k
Avg merge
3d 5h
Merged PRs (30d)
264

Description

### Description

It seems that system call patching is not implemented on ARM64, despite the fact that it should be easy since all instructions are 32-bit.

### Do you have a specific solution in mind?

The B instruction can be used to provide a 26-bit relative jump, which should hopefully be enough to find free memory in most cases (e.g. libc.so on my system is 2MB and should either be loaded first with free space before or randomized with free space around).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.