返回更新列表
新发布Jul 31, 2026

pwndbg v2026.07.29

借助 GDB 和 LLDB 轻松实现漏洞利用开发与逆向工程

分享

repository-open-graph

pwndbg

license Tests codecov.io Discord

pwndbg(/paʊnˈdiˌbʌɡ/)是一个GDB和LLDB插件,让调试不再痛苦,专注于低级软件开发人员、硬件黑客、逆向工程师和漏洞利用开发者所需的功能。

它拥有大量功能,请参阅我们的功能页面CHEATSHEET(可以打印!)。如有任何问题,您可以阅读文档或在我们的Discord服务器上提问。

想要Pwndbg保持快速发展,或者让我们就此做个演讲?赞助我们!

为什么?

原生GDB和LLDB在逆向工程和漏洞利用开发中非常难用。输入x/30gx $rsp或浏览繁琐的LLDB命令并不有趣,而且通常提供的信息很少。已经是2026年了,核心调试器仍然缺乏许多用户友好的功能,例如强大的十六进制转储命令。WinDbg用户偶尔遇到GDB或LLDB时完全不知所措。

Pwndbg是一个Python模块,可以加载到GDB中,或作为LLDB的REPL接口运行。它提供了一系列实用程序和增强功能,填补了这些调试器留下的空白,平滑了粗糙的边缘,使其更加用户友好。

安装

请参阅安装说明

那其他的呢?

许多过去的(gdbinitPEDA)和当前的项目(GEFbata24/GEF)提供了很棒的功能,但难以扩展,并且打包成单个大文件(103KB195KB423KB5.24MB)。Pwndbg旨在用更快、更干净、更健壮的实现来替代它们。

何时使用GDB或LLDB?

Pwndbg同时支持GDB和LLDB,每种调试器都有其优势。以下是一个快速指南,帮助您决定使用哪一个:

使用场景支持的调试器
调试Linux二进制文件或ELF文件GDBLLDB
调试macOS上的Mach-O二进制文件LLDB
Linux内核调试(qemu-system)GDBLLDB
Linux用户空间模拟(qemu-user)GDB
嵌入式调试(ARM Cortex M*或RISC-V/32)GDBLLDB

Pwndbg确保两者体验一致,因此在它们之间切换是无缝的。

pwndbg中的LLDB实现仍处于早期阶段,可能包含错误或限制。
已知问题在GitHub Issues中跟踪。

如果您遇到任何问题,请随时报告或在我们的Discord服务器上讨论。

兼容性表

功能支持的版本备注
pwndbg-gdb- Python 3.10+
- GDB 12.1+
在Ubuntu 22.04/24.04上经过充分测试
pwndbg-lldb- Python 3.12+
- LLDB 19+
实验性/早期阶段支持
qemu-userQEMU 8.1+vmmap需要vFile API
qemu-systemQEMU 6.2+自Ubuntu 22.04起支持的版本

贡献

欢迎拉取请求❤️。请查看贡献指南

致谢

Pwndbg最初由Zach Riggle创建,他现已离世。我们要感谢Zach对pwndbg以及整个安全社区的所有贡献。

分类