# heretek [github](https://github.com/wcampbell0x2a/heretek) [crates.io](https://crates.io/crates/heretek) [build status](https://github.com/wcampbell0x2a/heretek/actions?query=branch%3Amaster) GDB TUI Dashboard inspired by `gef`, designed to seamlessly connect to remote targets even without a functioning `gdbserver`. * **No python requirements**: Many vendors ship `gdb` without python support, we ship a single statically-linked musl binary. * **Architecture agnostic**: `heretek` only uses information given by `gdb`, no extra code required! * **No gdbserver requirements**: Many vendors ship invalid `gdbserver` binaries, this works on remote targets with just `gdb`, `nc`, `cat`, and `mkfifo`. No more wrestling with invalid or missing `gdbserver` binaries. * See [features](./docs/features.md) for `heretek` demos. * See [commands](./docs/commands.md) for internal `heretek` commands. ![screenshot](images/screenshot.png) ## Installation Either build from published source in crates.io. ``` $ cargo install heretek --locked ``` Or download from [github releases](https://github.com/wcampbell0x2a/heretek/releases). Arch Linux users can also install from the [official repositories](https://archlinux.org/packages/extra/x86_64/heretek/) via running `pacman -S heretek` ## Usage ```console GDB TUI Dashboard for the understanding of vast knowledge Usage: heretek [OPTIONS] Options: --gdb-path Override gdb executable path -r, --remote Connect to nc session `mkfifo gdb_pipe; cat gdb_pipe | gdb --interpreter=mi | nc -l -p 12345 > gdb_pipe` --32 Switch into 32-bit mode -c, --cmds Execute GDB commands lines starting with # are ignored --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 ``` > "To every problem, a solution lies in the application of tech-lore" - Ferrarch Asklepian, Warhammer 40,000: Mechanicus