Tool
GEF (GDB Enhanced Features)
Single-file Python extension, gef.py, that adds dynamic-analysis commands to GDB. Each stop shows a context view of registers, stack, code, threads and call trace, and commands cover memory maps, pointer dereferencing, searching process memory for patterns, ELF and security-property information, process status and glibc heap inspection. An architecture abstraction layer covers x86-32/64, ARMv5–v7, AArch64, SPARC, MIPS and PowerPC, and gef-remote enriches remote sessions through gdbserver or the GDB stubs of qemu-user and qemu-system.
Requirements and limitations
- Needs GDB 10.0+ built with Python 3.10+, the baseline since GEF 2025.01 in the compatibility table, plus file, readelf, nm, ps and python3 on the host; Python 2 users are pointed to the separate gef-legacy. The README installs it by downloading gef.py, through an install script or manually, and sourcing it from the user's .gdbinit file.
- Release at review: 2026.01, published 2026-02-02 without binary assets; the reviewed main commit is 12 commits ahead, adding glibc 2.42/2.43 heap support and removing unmaintained commands. More commands live in the separate GEF-Extras repository, which was not reviewed.
- GEF relies on the GDB API and Linux-specific sources such as /proc/<pid>, so some features may not work on custom or hardened systems, and heap commands support only the glibc allocator. qemu mode needs a local copy of the debugged binary because QEMU's GDB stub cannot transfer files. The README aims it at exploit developers and reverse engineers; this entry covers its debugging and inspection use.
- MIT license. Tests run with pytest under the Python version GDB was built against. No debugging sessions were run.
About this entry
- Type
- Tool
- Category
- Debugging and dynamic analysis
- Relationship
- Foundation tool
- Targets
- Binary
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · hugsy/gef · Revision 49c07dc
- gef.py#L8-L28 GitHub · hugsy/gef · Revision 49c07dc
- gef.py#L130-L131 GitHub · hugsy/gef · Revision 49c07dc
- docs/install.md GitHub · hugsy/gef · Revision 49c07dc
- docs/compat.md GitHub · hugsy/gef · Revision 49c07dc
- docs/commands/gef-remote.md GitHub · hugsy/gef · Revision 49c07dc
- docs/commands/heap.md GitHub · hugsy/gef · Revision 49c07dc
- docs/index.md#L83-L85 GitHub · hugsy/gef · Revision 49c07dc
- docs/testing.md GitHub · hugsy/gef · Revision 49c07dc
- LICENSE GitHub · hugsy/gef · Revision 49c07dc
- https://github.com/hugsy/gef/releases/tag/2026.01