hugsy/gef
GitHub: hugsy/gef
GEF 是一套基于 Python 的 GDB 增强工具集,为漏洞利用开发和逆向工程提供多架构支持的现代化调试体验。
Stars: 8039 | Forks: 807
`GEF`(发音为 ʤɛf - "Jeff")是一套针对 x86/64、ARM、MIPS、PowerPC 和 SPARC 架构的命令,旨在协助漏洞利用开发人员和逆向工程师使用经典的 GDB。它通过 Python API 为 GDB 提供额外功能,以辅助动态分析和漏洞利用开发的过程。应用程序开发者也能从中受益,因为 GEF 解决了 GDB 大部分晦涩难懂的问题,避免了重复输入传统命令,并能从调试运行时中提取出相关信息。
## 快速安装
只需确保你拥有 [GDB 10.0 或更高版本](https://www.gnu.org/s/gdb),并且是使用 Python3.10+ 绑定编译的,然后执行:
```
# 通过 install script
## 使用 curl
$ bash -c "$(curl -fsSL https://gef.blah.cat/sh)"
## 使用 wget
$ bash -c "$(wget https://gef.blah.cat/sh -O -)"
# 或手动
$ wget -O ~/.gdbinit-gef.py -q https://gef.blah.cat/py
$ echo source ~/.gdbinit-gef.py >> ~/.gdbinit
# 或者直接从 gdb 内部
$ gdb -q
(gdb) pi import urllib.request as u, tempfile as t; g=t.NamedTemporaryFile(suffix='-gef.py'); open(g.name, 'wb+').write(u.urlopen('https://tinyurl.com/gef-main').read()); gdb.execute('source %s' % g.name)
```
你可以通过启动 GDB 立即验证 GEF 是否已正确安装:

`GEF` 的部分功能包括:
* **仅**需一个 GDB 脚本
* 完全**架构无关**,**无**依赖:`GEF` 自成一体且[可即时安装](https://hugsy.github.io/gef/#setup)
* **快速**,通过限制依赖数量和优化代码,使命令执行速度尽可能快
* 提供极其丰富的命令,极大地改变你在 GDB 中的体验。
* [**易于**扩展](https://hugsy.github.io/gef/api/),通过为 GDB Python API 提供更易懂的布局来创建其他命令。
* 完全支持 Python3([Python2 支持已被弃用](https://github.com/hugsy/gef/releases/tag/2020.03) - 参见 [`gef-legacy`](https://github.com/hugsy/gef-legacy))。
* 基于架构抽象层构建,因此所有命令均可在任何 GDB 支持的架构上运行,如 x86-32/64、ARMv5/6/7、AARCH64、SPARC、MIPS、PowerPC 等。
* 适用于现实生活中的应用程序调试、漏洞利用开发,以及 CTF
* 还有更多由社区贡献的命令,可在 [GEF-Extras](https://github.com/hugsy/gef-extras) 上找到 !!
查看 [截图页面](docs/screenshots.md) 了解更多,或[在线试用](https://demo.gef.blah.cat)(用户名:`gef`/密码:`gef-demo`)
## 文档
与其他 GDB 插件不同,GEF 拥有详尽且[最新的文档](https://hugsy.github.io/gef/)。建议用户参阅该文档,这有助于他们使用 GEF。特别是新用户应仔细阅读(常见安装问题请参见 [FAQ](https://hugsy.github.io/gef/faq/)),如果问题仍然存在,请尝试在 Discord 频道寻求帮助或提交 issue。
## 当前状态
| 文档 | 许可证 | 兼容性 | CI 测试 (`main`) |
| :--------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| [](https://github.com/hugsy/gef/actions/workflows/generate-docs.yml) | [](https://github.com/hugsy/gef/blob/main/LICENSE) | [](https://github.com/hugsy/gef/) | [](https://github.com/hugsy/gef/actions/workflows/tests.yml) |
## 贡献
想要参与其中,请参阅[贡献文档](https://hugsy.github.io/gef/#contribution)和[准则](https://github.com/hugsy/gef/blob/main/.github/CONTRIBUTING.md)开始。
## 赞助
另一种让项目保持活力的方式是赞助它!查看[赞助文档](https://hugsy.github.io/gef/#sponsors)了解详情,成为那些[了不起的赞助者](https://github.com/sponsors/hugsy)中的一员。
## Happy Hacking 🍻
标签:CTF工具, DevSecOps, GDB增强, Hakrawler, IP 地址批量处理, MIPS, PowerPC, Python, SPARC, x86_64, 上游代理, 二进制分析, 二进制发布, 二进制安全, 云安全运维, 云资产清单, 内存检测, 堆溢出, 开源工具, 无后门, 栈溢出, 汇编分析, 漏洞利用开发, 漏洞搜索, 网络安全, 自定义密码套件, 调试器插件, 逆向工具, 逆向工程, 隐私保护