hacker@practice~program-interaction~level6:~$ gdb GNU gdb (Ubuntu 9.2-0ubuntu1~20.04.1) 9.2 Copyright (C) 2020 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word". GEF for linux ready, type `gef' to start, `gef config' to configure 88 commands loaded and 5 functions added for GDB 9.2 in 0.01ms using Python engine 3.8 gef➤ gef config context.enable False gef➤ target remote localhost:1234 Remote debugging using localhost:1234 Reading /usr/bin/cat from remote target... warning: File transfers from remote targets can be slow. Use "set sysroot" to access files locally instead. Reading /usr/bin/cat from remote target... Reading symbols from target:/usr/bin/cat... Reading /usr/bin/57ed53c8c9cb1a312f83b28982304effae0135.debug from remote target... Reading /usr/bin/.debug/57ed53c8c9cb1a312f83b28982304effae0135.debug from remote target... Reading /usr/lib/debug//usr/bin/57ed53c8c9cb1a312f83b28982304effae0135.debug from remote target... Reading /usr/lib/debug/usr/bin//57ed53c8c9cb1a312f83b28982304effae0135.debug from remote target... Reading target:/usr/lib/debug/usr/bin//57ed53c8c9cb1a312f83b28982304effae0135.debug from remote target... (No debugging symbols found in target:/usr/bin/cat) [*] Not a valid file format: No frame is currently selected. Reading /lib64/ld-linux-x86-64.so.2 from remote target... Reading /lib64/ld-linux-x86-64.so.2 from remote target... Reading symbols from target:/lib64/ld-linux-x86-64.so.2... Reading symbols from /usr/lib/debug/.build-id/7a/e2aaae1a0e5b262df913ee0885582d2e327982.debug... 0x00007ffff7fd0100 in _start () from target:/lib64/ld-linux-x86-64.so.2 [*] Using `target remote` with GEF should work in most cases, but use `gef-remote` if you can. You can disable the overwrite of the `target remote` command by toggling `gef.disable_target_remote_overwrite` in the config. (remote) gef➤ vmmap [ Legend: Code | Heap | Stack ] Start End Offset Perm Path 0x0000555555554000 0x0000555555556000 0x0000000000000000 r-- /usr/bin/cat 0x0000555555556000 0x000055555555b000 0x0000000000002000 r-x /usr/bin/cat 0x000055555555b000 0x000055555555e000 0x0000000000007000 r-- /usr/bin/cat 0x000055555555e000 0x0000555555560000 0x0000000000009000 rw- /usr/bin/cat 0x00007ffff7fcb000 0x00007ffff7fce000 0x0000000000000000 r-- [vvar] 0x00007ffff7fce000 0x00007ffff7fcf000 0x0000000000000000 r-x [vdso] 0x00007ffff7fcf000 0x00007ffff7fd0000 0x0000000000000000 r-- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7fd0000 0x00007ffff7ff3000 0x0000000000001000 r-x /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ff3000 0x00007ffff7ffb000 0x0000000000024000 r-- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ffc000 0x00007ffff7ffe000 0x000000000002c000 rw- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ffe000 0x00007ffff7fff000 0x0000000000000000 rw- 0x00007ffffffde000 0x00007ffffffff000 0x0000000000000000 rw- [stack] 0xffffffffff600000 0xffffffffff601000 0x0000000000000000 --x [vsyscall] (remote) gef➤ x/i $rip => 0x7ffff7fd0100 <_start>: mov rdi,rsp (remote) gef➤ c Continuing. Reading /lib/x86_64-linux-gnu/libc.so.6 from remote target... ^C Program received signal SIGINT, Interrupt. 0x00007ffff7edc1f2 in __GI___libc_read (fd=0x0, buf=0x7ffff7d7b000, nbytes=0x20000) at ../sysdeps/unix/sysv/linux/read.c:26 26 ../sysdeps/unix/sysv/linux/read.c: No such file or directory. (remote) gef➤ vmmap [ Legend: Code | Heap | Stack ] Start End Offset Perm Path 0x0000555555554000 0x0000555555556000 0x0000000000000000 r-- /usr/bin/cat 0x0000555555556000 0x000055555555b000 0x0000000000002000 r-x /usr/bin/cat 0x000055555555b000 0x000055555555e000 0x0000000000007000 r-- /usr/bin/cat 0x000055555555e000 0x0000555555560000 0x0000000000009000 rw- /usr/bin/cat 0x00007ffff7fcb000 0x00007ffff7fce000 0x0000000000000000 r-- [vvar] 0x00007ffff7fce000 0x00007ffff7fcf000 0x0000000000000000 r-x [vdso] 0x00007ffff7fcf000 0x00007ffff7fd0000 0x0000000000000000 r-- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7fd0000 0x00007ffff7ff3000 0x0000000000001000 r-x /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ff3000 0x00007ffff7ffb000 0x0000000000024000 r-- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ffc000 0x00007ffff7ffe000 0x000000000002c000 rw- /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x00007ffff7ffe000 0x00007ffff7fff000 0x0000000000000000 rw- 0x00007ffffffde000 0x00007ffffffff000 0x0000000000000000 rw- [stack] 0xffffffffff600000 0xffffffffff601000 0x0000000000000000 --x [vsyscall] (remote) gef➤ version GEF: rev:db5b7b8d1784610d4577cf4137e453e974541aac (Git - clean) SHA256(/opt/gef/gef.py): a479c91aa46982bfe8121c287e17cde748686a1134fea8cebe8e4f1d78e7d2bb GDB: 9.2 GDB-Python: 3.8 (remote) gef➤ info proc mappings process 1892 Mapped address spaces: Start Addr End Addr Size Offset objfile 0x555555554000 0x555555556000 0x2000 0x0 /usr/bin/cat 0x555555556000 0x55555555b000 0x5000 0x2000 /usr/bin/cat 0x55555555b000 0x55555555e000 0x3000 0x7000 /usr/bin/cat 0x55555555e000 0x55555555f000 0x1000 0x9000 /usr/bin/cat 0x55555555f000 0x555555560000 0x1000 0xa000 /usr/bin/cat 0x555555560000 0x555555581000 0x21000 0x0 [heap] 0x7ffff7d7a000 0x7ffff7d9c000 0x22000 0x0 0x7ffff7d9c000 0x7ffff7dce000 0x32000 0x0 /usr/lib/locale/C.UTF-8/LC_CTYPE 0x7ffff7dce000 0x7ffff7df0000 0x22000 0x0 /usr/lib/x86_64-linux-gnu/libc-2.31.so 0x7ffff7df0000 0x7ffff7f68000 0x178000 0x22000 /usr/lib/x86_64-linux-gnu/libc-2.31.so 0x7ffff7f68000 0x7ffff7fb6000 0x4e000 0x19a000 /usr/lib/x86_64-linux-gnu/libc-2.31.so 0x7ffff7fb6000 0x7ffff7fba000 0x4000 0x1e7000 /usr/lib/x86_64-linux-gnu/libc-2.31.so 0x7ffff7fba000 0x7ffff7fbc000 0x2000 0x1eb000 /usr/lib/x86_64-linux-gnu/libc-2.31.so 0x7ffff7fbc000 0x7ffff7fc2000 0x6000 0x0 0x7ffff7fc4000 0x7ffff7fcb000 0x7000 0x0 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache 0x7ffff7fcb000 0x7ffff7fce000 0x3000 0x0 [vvar] 0x7ffff7fce000 0x7ffff7fcf000 0x1000 0x0 [vdso] 0x7ffff7fcf000 0x7ffff7fd0000 0x1000 0x0 /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x7ffff7fd0000 0x7ffff7ff3000 0x23000 0x1000 /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x7ffff7ff3000 0x7ffff7ffb000 0x8000 0x24000 /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x7ffff7ffc000 0x7ffff7ffd000 0x1000 0x2c000 /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x7ffff7ffd000 0x7ffff7ffe000 0x1000 0x2d000 /usr/lib/x86_64-linux-gnu/ld-2.31.so 0x7ffff7ffe000 0x7ffff7fff000 0x1000 0x0 0x7ffffffde000 0x7ffffffff000 0x21000 0x0 [stack] 0xffffffffff600000 0xffffffffff601000 0x1000 0x0 [vsyscall] (remote) gef➤