pwndbg
GDB and LLDB plugin that improves debugging for exploit development and reverse engineering with low-level inspection helpers.
Technical Architecture & Overview
pwndbg is an open-source Python plugin for GDB and LLDB that adds memory, stack, heap, and instruction inspection helpers for low-level debugging. It focuses on features needed by low-level software developers, hardware hackers, reverse engineers, and exploit developers.
Targeted Technical Use Cases
Debugging complex binaries and inspecting heap, stack, and memory state.
Evaluation & Trade-offs
Core Strengths
- +Provides commands for stack, heap, register, and memory inspection.
- +Works with both GDB (battle-tested) and LLDB (experimental).
- +Includes exploit development helpers such as ROP gadget search, leak finding, and GOT tracking.
Trade-Offs & Limitations
- -LLDB support is early-stage and may contain bugs or limitations.
- -Advanced use requires strong knowledge of low-level debugging and assembly.
Defensive Security Application
Verifying binary security settings and investigating binary behavior during reverse engineering.
Frequently Asked Questions
What is pwndbg?→
pwndbg is an open-source Python plugin for GDB and LLDB that adds memory, stack, heap, and instruction inspection helpers for low-level debugging. It focuses on features needed by low-level software developers, hardware hackers, reverse engineers, and exploit developers.
What is pwndbg used for?→
Debugging complex binaries and inspecting heap, stack, and memory state.
What are the strengths of pwndbg?→
- +Provides commands for stack, heap, register, and memory inspection.
- +Works with both GDB (battle-tested) and LLDB (experimental).
- +Includes exploit development helpers such as ROP gadget search, leak finding, and GOT tracking.
What are the limitations of pwndbg?→
- +LLDB support is early-stage and may contain bugs or limitations.
- +Advanced use requires strong knowledge of low-level debugging and assembly.
How is pwndbg used defensively?→
Verifying binary security settings and investigating binary behavior during reverse engineering.