Packages and Binaries:
gef
Modern experience for GDB with advanced debugging capabilities
GEF is a set of commands for x86/64, ARM, MIPS, PowerPC and SPARC to assist
exploit developers and reverse-engineers when using old school GDB. It
provides additional features to GDB using the Python API to assist during the
process of dynamic analysis and exploit development. Application developers
will also benefit from it, as GEF lifts a great part of regular GDB obscurity,
avoiding repeating traditional commands, or bringing out the relevant
information from the debugging runtime.
Installed size: 436 KB
How to install: sudo apt install gef
Dependencies:
- gdb
gef
root@kali:~# gef -h
This is the GNU debugger. Usage:
gdb [options] [executable-file [core-file or process-id]]
gdb [options] --args executable-file [inferior-arguments ...]
Selection of debuggee and its files:
--args Arguments after executable-file are passed to inferior.
--core=COREFILE Analyze the core dump COREFILE.
--exec=EXECFILE Use EXECFILE as the executable.
--pid=PID Attach to running process PID.
--directory=DIR Search for source files in DIR.
--se=FILE Use FILE as symbol file and executable file.
--symbols=SYMFILE Read symbols from SYMFILE.
--readnow Fully read symbol files on first access.
--readnever Do not read symbol files.
--write Set writing into executable and core files.
Initial commands and command files:
--command=FILE, -x Execute GDB commands from FILE.
--init-command=FILE, -ix
Like -x but execute commands before loading inferior.
--eval-command=COMMAND, -ex
Execute a single GDB command.
May be used multiple times and in conjunction
with --command.
--init-eval-command=COMMAND, -iex
Like -ex but before loading inferior.
--nh Do not read ~/.gdbinit.
--nx Do not read any .gdbinit files in any directory.
Output and user interface control:
--fullname Output information used by emacs-GDB interface.
--interpreter=INTERP
Select a specific interpreter / user interface.
--tty=TTY Use TTY for input/output by the program being debugged.
-w Use the GUI interface.
--nw Do not use the GUI interface.
--tui Use a terminal user interface.
-q, --quiet, --silent
Do not print version number on startup.
Operating modes:
--batch Exit after processing options.
--batch-silent Like --batch, but suppress all gdb stdout output.
--return-child-result
GDB exit code will be the child's exit code.
--configuration Print details about GDB configuration and then exit.
--help Print this message and then exit.
--version Print version information and then exit.
Remote debugging options:
-b BAUDRATE Set serial port baud rate used for remote debugging.
-l TIMEOUT Set timeout in seconds for remote debugging.
Other options:
--cd=DIR Change current directory to DIR.
--data-directory=DIR, -D
Set GDB's data-directory to DIR.
At startup, GDB reads the following early init files and executes their
commands:
None found.
At startup, GDB reads the following init files and executes their commands:
* system-wide init files: /etc/gdb/gdbinit
For more information, type "stream" from within GDB, or consult the
GDB manual (available as on-line info or a printed manual).
Report bugs to <https://www.gnu.org/software/gdb/bugs/>.
You can ask GDB-related questions on the GDB users mailing list
([email protected]) or on GDB's IRC channel (#gdb on Libera.Chat).
Updated on: 2026-Mar-13