GithubHelp home page GithubHelp logo

c3r34lk1ll3r / gef Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hugsy/gef

0.0 1.0 0.0 3.9 MB

GEF - GDB Enhanced Features for exploit devs & reversers

Home Page: http://gef.rtfd.io

License: MIT License

Shell 0.86% Python 97.32% Makefile 0.39% C 1.33% Dockerfile 0.11%

gef's Introduction

GDB Enhanced Features (a.k.a. GEF)

logo

GEF (pronounced ʤɛf - "Jeff") is a set of commands for x86/64, ARM, MIPS, PowerPC and SPARC to assist exploit developers and reverse-engineers when using old school GDB. It provides additional features to GDB using the Python API to assist during the process of dynamic analysis and exploit development. Application developers will also benefit from it, as GEF lifts a great part of regular GDB obscurity, avoiding repeating traditional commands, or bringing out the relevant information from the debugging runtime.

gef-context

Instant Setup

Simply make sure you have GDB 7.7 or higher compiled with Python3 bindings, then:

# via the install script
$ wget -q -O- https://github.com/hugsy/gef/raw/master/scripts/gef.sh | sh

# manually
$ wget -O ~/.gdbinit-gef.py -q https://github.com/hugsy/gef/raw/master/gef.py
$ echo source ~/.gdbinit-gef.py >> ~/.gdbinit

Then just start playing:

$ gdb -q /path/to/my/bin
gef➤  gef help

Note: As of January 2020, GEF doesn't officially support Python 2 any longer, due to Python 2 becoming officially deprecated. If you really need GDB+Python2, use gef-legacy instead.

Highlights

A few of GEF features include:

  • One single GDB script.
  • Entirely OS Agnostic, NO dependencies: GEF is battery-included and is installable in 2 seconds (unlike PwnDBG).
  • Fast limiting the number of dependencies and optimizing code to make the commands as fast as possible (unlike PwnDBG).
  • Provides a great variety of commands to drastically change your experience in GDB.
  • Easily extendable to create other commands by providing more comprehensible layout to GDB Python API.
  • Works consistently on both Python2 and Python3.
  • Built around an architecture abstraction layer, so all commands work in any GDB-supported architecture such as x86-32/64, ARMv5/6/7, AARCH64, SPARC, MIPS, PowerPC, etc. (unlike PEDA)
  • Suited for real-life apps debugging, exploit development, just as much as CTF (unlike PEDA or PwnDBG)

Check out the Screenshot page for more.

Or try it online (user:gef/password:gef-demo)

Documentation

Unlike other GDB plugins, GEF has an extensive and up-to-date documentation. Users are recommended to refer to it as it may help them in their attempts to use GEF. In particular, new users should navigate through it (see the FAQ for common installation problems), and the problem persists, try to reach out for help on the IRC channel or submit an issue.

Current status

Documentation License Compatibility Test validation
ReadTheDocs MIT Python 3 CircleCI status

Community

IRC Gitter Slack Discord
IRC Gitter Slack Slack

Contribute

To get involved, refer to the Contribution documentation and the guidelines to start.

And special thanks to Pedro "TheZakMan" Araujo for the logo!.

Happy Hacking

gef's People

Contributors

a1exdandy avatar arthaud avatar b1r1b1r1 avatar d4em0n avatar daniellimws avatar dlrobertson avatar escapingbug avatar fibonascii avatar gaffe23 avatar grazfather avatar hugsy avatar jr64 avatar kirill9617 avatar kyle-kyle avatar lillypad avatar moehw avatar nbanmp avatar noodles777 avatar pyraun avatar rick2600 avatar sashs avatar silverbut avatar tesuji avatar tiecoon avatar u0m3 avatar ulidtko avatar umutoztunc avatar wbowling avatar wmliang avatar yrp604 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.