pwncollege
DojosLeaderboardCommunity
Back to cse598-avr-f2024

ARM64 ROP

cse598-avr-f2024
0/13 challenges completed

ARM64 has a number of differences in the calling convention, prologues, and epilogues that cause ROP to be different than on x86_64.

Because these challenges are running on an x86-64 host, you might need any of the aarch64-linux-gnu-* tools, such as aarch64-linux-gnu-objdump.

gdb is now a 2-step process:

In one terminal / tmux window:

$ /usr/bin/qemu-aarch64-static -g 1234 /challenge/level-1-0

In another:

$ gdb-multiarch /challenge/level-1-0
(gdb) target remote localhost:1234
1
level-1-0
2
level-1-1
3
level-2-0
4
level-2-1
5
level-3-0
6
level-3-1
7
level-3-0-a
8
level-3-1-a
9
level-4-0
10
level-4-1
11
static-binary-rop
12
level-4-1-gcc
13
hard-level-3-1-a-gcc