• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

lib/H03-Jan-2021-2,5562,070

.gitignoreH A D03-Jan-2021232 2822

LICENSEH A D03-Jan-2021157 42

READMEH A D03-Jan-20211.1 KiB4633

README.mdH A D03-Jan-20211.9 KiB4234

peda.pyH A D03-Jan-2021194.6 KiB6,1655,095

python23-compatibility.mdH A D03-Jan-20212 KiB11182

README

1PEDA - Python Exploit Development Assistance for GDB
2
3Version: 1.0
4
5Release: special public release, Black Hat USA 2012
6
70. Credits
8    - Huy Phan (pdah) for reviewing code
9
101. Introduction
11PEDA is a Python GDB script with many handy commands to help speed up
12exploit development process on Linux/Unix. It is also a framework for
13writing custom interactive Python GDB commands.
14
152. Requirements
16    - PEDA 1.0 is only support Linux
17    - GDB 7.x
18    - Python 2.6+
19    - Utilities: nasm, readelf, objdump
20
213. Installation
22    - Download
23        $ wget http://ropshell.com/peda/peda.tar.gz
24    - Unpack to HOME directory
25        $ tar zxvf peda.tar.gz
26    - Append a line to ~/.gdbinit to load PEDA when GDB starts
27        $ echo "source ~/peda/peda.py" >> ~/.gdbinit
28
294. Usage
30    - List of available commands:
31        gdb-peda$ peda help
32
33    - Search for some commands:
34        gdb-peda$ apropos <keyword>
35        gdb-peda$ help <keyword>
36
37    - Get usage manual of specific command:
38        gdb-peda$ phelp <command>
39        gdb-peda$ help <command>
40
41    - Get/set config option:
42        gdb-peda$ pshow option
43        gdb-peda$ pset option <name> <value>
44
45
46

README.md

1peda
2====
3
4PEDA - Python Exploit Development Assistance for GDB
5
6## Key Features:
7* Enhance the display of gdb: colorize and display disassembly codes, registers, memory information during debugging.
8* Add commands to support debugging and exploit development (for a full list of commands use `peda help`):
9  * `aslr` -- Show/set ASLR setting of GDB
10  * `checksec` -- Check for various security options of binary
11  * `dumpargs` -- Display arguments passed to a function when stopped at a call instruction
12  * `dumprop` -- Dump all ROP gadgets in specific memory range
13  * `elfheader` -- Get headers information from debugged ELF file
14  * `elfsymbol` -- Get non-debugging symbol information from an ELF file
15  * `lookup` -- Search for all addresses/references to addresses which belong to a memory range
16  * `patch` -- Patch memory start at an address with string/hexstring/int
17  * `pattern` -- Generate, search, or write a cyclic pattern to memory
18  * `procinfo` -- Display various info from /proc/pid/
19  * `pshow` -- Show various PEDA options and other settings
20  * `pset` -- Set various PEDA options and other settings
21  * `readelf` -- Get headers information from an ELF file
22  * `ropgadget` -- Get common ROP gadgets of binary or library
23  * `ropsearch` -- Search for ROP gadgets in memory
24  * `searchmem|find` -- Search for a pattern in memory; support regex search
25  * `shellcode` -- Generate or download common shellcodes.
26  * `skeleton` -- Generate python exploit code template
27  * `vmmap` -- Get virtual mapping address ranges of section(s) in debugged process
28  * `xormem` -- XOR a memory region with a key
29
30## Installation
31
32    git clone https://github.com/longld/peda.git ~/peda
33    echo "source ~/peda/peda.py" >> ~/.gdbinit
34    echo "DONE! debug your program with gdb and enjoy"
35
36## Screenshot
37![start](http://i.imgur.com/P1BF5mp.png)
38
39![pattern arg](http://i.imgur.com/W97OWRC.png)
40
41![patts](http://i.imgur.com/Br24IpC.png)
42