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