heretek
GDB TUI Dashboard inspired by gef, designed to seamlessly connect to remote targets even without a functioning gdbserver.
-
No python requirements: Many vendors ship
gdbwithout python support, we ship a single statically-linked musl binary. -
Architecture agnostic:
heretekonly uses information given bygdb, no extra code required! -
No gdbserver requirements: Many vendors ship invalid
gdbserverbinaries, this works on remote targets with justgdb,nc,cat, andmkfifo. No more wrestling with invalid or missinggdbserverbinaries. -
See features for
heretekdemos. -
See commands for internal
heretekcommands. -
See env-vars for
heretekenv vars.
Installation
Either build from published source in crates.io.
$ cargo install heretek --locked
Or download from github releases.
Arch Linux users can also install from the official repositories via running pacman -S heretek
Usage
GDB TUI Dashboard for the understanding of vast knowledge Usage: heretek [OPTIONS] Options: --gdb-path <GDB_PATH> Override gdb executable path -r, --remote <REMOTE> Connect to nc session `mkfifo gdb_pipe; cat gdb_pipe | gdb --interpreter=mi | nc -l -p 12345 > gdb_pipe` --ptr-size <PTR_SIZE> Switch into 32-bit mode Heretek will do it's best to figure this out on it's own, but this will force the pointers to be evaluated as 32 bit [default: auto] [possible values: 32, 64, auto] -c, --cmds <CMDS> Execute GDB commands line-by-line from file lines starting with # are ignored --log-path <LOG_PATH> Path to write log Set env `RUST_LOG` to change log level -h, --help Print help (see a summary with '-h') -V, --version Print version
Development
All patches/merge requests are welcome! See the development guide for more details. DEVELOPMENT.md.
"To every problem, a solution lies in the application of tech-lore" - Ferrarch Asklepian, Warhammer 40,000: Mechanicus
