Giter Site home page Giter Site logo

expeda's Introduction

expeda

EXPEDA - Extended PEDA

New Key Features:

  • ctn, c -- Execute continue command
  • brk, b -- Execute break command
  • next, n -- Execute nexti command
  • step, s -- Execute stepi command
  • afterpc, af -- Show instructions after now program-counter
  • beforepc, bef -- Show instructions before now program-counter
  • grp -- Grep strings
  • allstack -- Show all stack data
  • nuntil -- Execute nexti command until given regexp
  • suntil -- Execute stepi command until given regexp
  • nextcalluntil -- Execute nextcall command until given regexp
  • stepcalluntil -- Execute nextcall and step command until given regexp and given depth
  • infonow, inow -- Show detail information of the instruction now specified program-counter
  • infox -- Customed xinfo command
  • contextmode -- Set context mode
  • ... and all commands of peda.

Usage as a library:

$ cat gdbrc.py
p = PEDA()
c = PEDACmd()
c.start()
c.nuntil("call")
c.grp("afterpc 10", ".*call.*")
$ gdb /bin/ls -x gdbrc.py

...

=> 0x402a2c:    call   0x40db00
   0x402a3b:    call   0x402840 <setlocale@plt>
   0x402a4a:    call   0x4024b0 <bindtextdomain@plt>
   0x402a54:    call   0x402470 <textdomain@plt>
gdb-expeda$ 

Usage when just debugging:

$ gdb /bin/ls -x gdbrc.py

...

=> 0x402a2c:    call   0x40db00
   0x402a3b:    call   0x402840 <setlocale@plt>
   0x402a4a:    call   0x4024b0 <bindtextdomain@plt>
   0x402a54:    call   0x402470 <textdomain@plt>
gdb-expeda$ editor tmp.py # You must have set `$EDITOR` . And you can use `vim` or `emacs` instead of `editor` .
gdb-expeda$ cat tmp.py
while True:
    c.next() # You can use `p` and `c` suddenly if you have used `p = PEDA()` and `c = PEDACmd()` in `gdbrc.py` .
    eax = p.getreg("eax")
    if eax == 0:
        break
gdb-expeda$ source tmp.py

Installation:

$ git clone https://github.com/miyagaw61/expeda.git /path/to/expeda
$ echo "source /path/to/expeda/peda.py" >> ~/.gdbinit

expeda's People

Contributors

longld avatar miyagaw61 avatar danghvu avatar tmfink avatar jonathansalwan avatar zachriggle avatar awailly avatar wapiflapi avatar agahlot avatar ali-razmjoo avatar mancha1 avatar lambor avatar degrigis avatar bvanheu avatar laanwj avatar quangnh89 avatar red0xff avatar privat avatar grazfather avatar alanyee 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.