GDB
O depurador padrão do mundo Unix, escrito originalmente por Richard Stallman em 1986. Executa programas passo a passo, define breakpoints, inspeciona memória e faz a autópsia de core dumps.
Os comandos básicos já resolvem quase tudo: break, run, bt para a pilha de chamadas, print, next/step, info locals. Menos conhecidos, mas valiosos, são os watchpoints (parar quando uma variável muda), o reverse-step para rodar o programa de trás para frente, e o gdbserver para depuração remota de sistemas embarcados via serial ou rede. Funciona com C, C++, Rust, Go, Fortran e Ada, lendo os símbolos DWARF do binário — por isso é preciso compilar com -g. A interface assusta à primeira vista; tui enable abre uma janela com o código-fonte, e os plugins pwndbg e GEF são padrão em engenharia reversa. O LLDB é o equivalente do projeto LLVM e vem como padrão no macOS.