ITADN
hugsy/gef
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

logo

Discord Docs Try GEF

GEF(发音为 ʤɛf - "Jeff")是一组用于 x86/64、ARM、MIPS、PowerPC 和 SPARC 的命令, 旨在协助使用传统 GDB 的漏洞利用开发者和逆向工程师。它通过 Python API 为 GDB 提供额外 功能,以辅助动态分析和漏洞利用开发过程。应用程序开发人员也将从中受益,因为 GEF 消除了 常规 GDB 的大部分晦涩之处,避免了重复传统命令,或从调试运行时中提取相关信息。

即时安装

只需确保你拥有 GDB 10.0 或更高版本 并编译了 Python3.10+ 绑定,然后:

# via the install script
## using curl
$ bash -c "$(curl -fsSL https://gef.blah.cat/sh)"

## using wget
$ bash -c "$(wget https://gef.blah.cat/sh -O -)"

# or manually
$ wget -O ~/.gdbinit-gef.py -q https://gef.blah.cat/py
$ echo source ~/.gdbinit-gef.py >> ~/.gdbinit

# or alternatively from inside gdb directly
$ 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-context

GEF 的几项特性包括:

  • 一个单一的 GDB 脚本
  • 完全架构无关依赖项:GEF 开箱即用,并且可即时安装
  • 快速通过限制依赖项数量并优化代码,使命令尽可能快
  • 提供大量命令,以彻底改变您在 GDB 中的体验。
  • 易于扩展,通过为 GDB Python API 提供 d 更清晰的布局来创建其他命令。
  • 全面支持 Python3(Python2 支持已 移除 - 参见 gef-legacy)。
  • 围绕架构抽象层构建,因此所有命令都适用于任何 GDB 支持的 架构,例如 x86-32/64、ARMv5/6/7、AARCH64、SPARC、MIPS、PowerPC 等。
  • 适用于实际应用程序调试、漏洞利用开发,同样适用于 CTF
  • 以及社区贡献的更多命令,可在 GEF-Extras 上找到 !!

查看截图页面以获取更多信息,或在线 试用(用户:gef/密码:gef-demo

文档

与其他 GDB 插件不同,GEF 拥有详尽且最新的 文档。建议用户参考该文档,因为它可能有助于 他们使用 GEF。特别是,新用户应浏览该文档(参见 常见问题解答 了解常见安装问题),如果问题仍然存在, 请尝试在 Discord 频道寻求帮助或提交问题。

当前状态

文档许可证兼容性CI 测试 (main)
DocumentationMITPython 3CI Test for GEF

贡献

如需参与,请参阅贡献 文档指南开始。

赞助者

让项目保持活力的另一种贡献方式是赞助它!查看赞助 文档以了解详细信息,从而成为 那些优秀赞助者名单中的一员。

快乐编程 🍻