-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
arm64: executor: support data relocations in SyzOS #5565
Labels
Comments
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 3, 2024
Detect and report ADRP instructions in the linked binaries to avoid crashes inside SyzOS. See google#5565 for more context.
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 3, 2024
Prevent the compiler from generating jump tables that may kick in at random places and break SyzOS execution (google#5565)
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 5, 2024
Detect and report ADRP instructions in the linked binaries to avoid crashes inside SyzOS. See google#5565 for more context.
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 5, 2024
Prevent the compiler from generating a jump table by replacing a switch with a series of if statements. This is ugly, but lets us work around crashes caused by google#5565
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 5, 2024
Detect and report ADRP instructions in the linked binaries to avoid crashes inside SyzOS. See google#5565 for more context.
ramosian-glider
added a commit
to ramosian-glider/syzkaller
that referenced
this issue
Dec 5, 2024
Prevent the compiler from generating a jump table by replacing a switch with a series of if statements. This is ugly, but lets us work around crashes caused by google#5565
github-merge-queue bot
pushed a commit
that referenced
this issue
Dec 5, 2024
Detect and report ADRP instructions in the linked binaries to avoid crashes inside SyzOS. See #5565 for more context.
github-merge-queue bot
pushed a commit
that referenced
this issue
Dec 5, 2024
Prevent the compiler from generating a jump table by replacing a switch with a series of if statements. This is ugly, but lets us work around crashes caused by #5565
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Right now SyzOS code cannot reference global variables from
.data
or.bss
, it also gets broken if the compiler decides to play some clever tricks like creating a jump table or memcpy()ing a struct initializer from.rodata
.Because we cannot possibly make the compiler emit the guest-relevant data into a separate section, fixing this problem will require mapping all data sections into the guest address space, and fixing all the relocations. Alternatively, we can try to keep SyzOS relocation-free by scanning the code for
ADRP
instructions and reporting errors.The text was updated successfully, but these errors were encountered: