
pwndbg v2026.07.29
Sviluppo di exploit e reverse engineering con GDB e LLDB resi facili

pwndbg
pwndbg (/paʊnˈdiˌbʌɡ/) è un plug-in per GDB e LLDB che rende il debugging meno doloroso,
con un focus sulle funzionalità necessarie a sviluppatori di software di basso livello, hacker hardware,
reverse engineer e sviluppatori di exploit.
Ha un'infinità di funzionalità, consulta la nostra pagina Features e il CHEATSHEET (sentiti libero di stamparlo!). Se hai domande puoi leggere la documentazione o chiedere nel nostro server Discord.
Vuoi che Pwndbg continui ad andare veloce, o che teniamo un talk a riguardo? Sostienici!
Perché?
GDB e LLDB puri sono terribili da usare per il reverse engineering e lo sviluppo di exploit.
Digitare x/30gx $rsp o muoversi tra i macchinosi comandi di LLDB non è divertente e spesso fornisce
informazioni minime. Siamo nel 2026 e i debugger principali mancano ancora di molte funzionalità
user-friendly come un robusto comando hexdump. Gli utenti di WinDbg sono completamente persi quando
ogni tanto capita loro di dover usare GDB o LLDB.
Pwndbg è un modulo Python che può essere caricato in GDB o eseguito come interfaccia REPL per LLDB. Fornisce una suite di utility e migliorie che colmano le lacune lasciate da questi debugger, levigando gli spigoli e rendendoli più user-friendly.
Installazione
Vedi le istruzioni di installazione.
E per quanto riguarda ...?
Molti progetti passati (gdbinit, PEDA) e presenti (GEF, bata24/GEF) offrono ottime funzionalità, ma sono difficili da estendere e sono distribuiti come singoli file di grandi dimensioni (103KB, 195KB, 423KB, 5.24MB). Pwndbg mira a sostituirli con un'implementazione più veloce, pulita e robusta.
Quando usare GDB o LLDB?
Pwndbg supporta sia GDB che LLDB, e ogni debugger ha i suoi punti di forza. Ecco una guida rapida per aiutarti a decidere quale usare:
| Caso d'uso | Debugger supportato |
|---|---|
| Debugging di binari Linux o file ELF | GDB, LLDB |
| Debugging di binari Mach-O su macOS | LLDB |
| Debugging del kernel Linux (qemu-system) | GDB, LLDB |
| Emulazione user-space Linux (qemu-user) | GDB |
| Debugging embedded (ARM Cortex M* o RISC-V/32) | GDB, LLDB |
Pwndbg garantisce un'esperienza coerente su entrambi, quindi il passaggio dall'uno all'altro è senza interruzioni.
L'implementazione LLDB in pwndbg è ancora in fase iniziale e potrebbe contenere bug o limitazioni.
I problemi noti sono tracciati in GitHub Issues.Se incontri qualsiasi problema, sentiti libero di segnalarlo o di discuterne sul nostro server Discord.
Tabella di compatibilità
| Funzionalità | Versione supportata | Note |
|---|---|---|
| pwndbg-gdb | - Python 3.10+ - GDB 12.1+ | Testato sul campo su Ubuntu 22.04/24.04 |
| pwndbg-lldb | - Python 3.12+ - LLDB 19+ | Supporto sperimentale/in fase iniziale |
| qemu-user | QEMU 8.1+ | L'API vFile è necessaria per vmmap |
| qemu-system | QEMU 6.2+ | Versione supportata da Ubuntu 22.04 |
Contribuire
Le pull request sono benvenute ❤️. Dai un'occhiata alla Guida per contribuire.
Riconoscimenti
Pwndbg è stato creato originariamente da Zach Riggle, che non è più tra noi. Vogliamo ringraziare Zach per tutti i suoi contributi a pwndbg e alla più ampia community della sicurezza.