wcampbell0x2a/heretek
GitHub: wcampbell0x2a/heretek
基于Rust的无Python依赖GDB TUI调试仪表板,解决受限环境下传统GDB增强工具无法部署及gdbserver不可用时的远程调试难题。
Stars: 370 | Forks: 9
# heretek
[
](https://github.com/wcampbell0x2a/heretek)
[
](https://crates.io/crates/heretek)
[
](https://github.com/wcampbell0x2a/heretek/actions?query=branch%3Amaster)
[
](https://app.codecov.io/gh/wcampbell0x2a/heretek)
受 `gef` 启发的 GDB TUI Dashboard,旨在即使在 `gdbserver` 无法工作的情况下也能无缝连接到远程目标。
* **无 Python 依赖**:许多供应商发布的 `gdb` 不包含 Python 支持,我们提供单个静态链接的 musl 二进制文件。
* **架构无关**:`heretek` 仅使用 `gdb` 提供的信息,无需额外代码!
* **无 gdbserver 依赖**:许多供应商提供的 `gdbserver` 二进制文件无效,本工具仅通过 `gdb`、`nc`、`cat` 和 `mkfifo` 即可在远程目标上工作。无需再为无效或缺失的 `gdbserver` 二进制文件而烦恼。
* 查看 [功能特性](./docs/features.md) 以了解 `heretek` 演示。
* 查看 [命令](./docs/commands.md) 以了解内部 `heretek` 命令。
* 查看 [环境变量](./docs/env-vars.md) 以了解 `heretek` 环境变量。

## 安装
可以从 crates.io 上的已发布源码构建。
```
$ cargo install heretek --locked
```
或者从 [GitHub releases](https://github.com/wcampbell0x2a/heretek/releases) 下载。
Arch Linux 用户也可以通过运行 `pacman -S heretek` 从[官方仓库](https://archlinux.org/packages/extra/x86_64/heretek/)安装。
## 使用方法
```
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`
--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
Execute GDB commands line-by-line from file
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
```
## 开发
欢迎所有补丁/合并请求!详情请参阅开发指南。
[DEVELOPMENT.md](DEVELOPMENT.md)。
标签:GDB, gef替代, malware-analysis, Rust, TUI, 二进制分析, 云安全运维, 云资产清单, 仪表盘, 可视化界面, 嵌入式调试, 无Python依赖, 汇编, 网络安全, 网络流量审计, 远程调试, 逆向工程, 通知系统, 隐私保护, 静态编译