You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using gef-remote to debug a x86-64 binary running using QEMU, the vmmap command doesn't correctly show the emulated program's memory regions. It just shows this one region:
I ran it under QEMU using this command: qemu-x86_64 -g 1234 ./x86
I then ran gef with these commands:
set arch i386:x86-64
file x86
gef-remote --qemu-user --qemu-binary x86 localhost 1234
gef successfully attaches to this program and I can see the assembly listing + registers.
However, when I run vmmap I don't see the expected memory areas of this program.
qemu-user & gdb don't share enough information via the gdb remote protocol to reliably reconstitute the equivalent of /proc/<pid/maps on the client's end. That's why a preferred approach if you can would be to use the remote mode (https://hugsy.github.io/gef/commands/gef-remote/#remote-mode) instead, where gef will rebuild locally a mock procfs environment and you will see the regions.
GEF+GDB version
Operating System
Ubuntu 22.04.3 LTS
Describe the issue you encountered
When using
gef-remote
to debug a x86-64 binary running using QEMU, thevmmap
command doesn't correctly show the emulated program's memory regions. It just shows this one region:Do you read the docs and look at previously closed issues/PRs for similar cases?
Yes
Architecture impacted
Describe your issue. Without a proper reproduction step-by-step, your issue will be ignored.
I compiled the test program below with this command:
x86_64-linux-gnu-gcc main.c -o x86
I ran it under QEMU using this command:
qemu-x86_64 -g 1234 ./x86
I then ran gef with these commands:
gef successfully attaches to this program and I can see the assembly listing + registers.
However, when I run vmmap I don't see the expected memory areas of this program.
Minimalist test case
Additional context?
No response
The text was updated successfully, but these errors were encountered: