This page looks best with JavaScript enabled

[PEDA] Python Exploit Development Assistence para GDB

 ·   ·   3 min read

Esta entrada me llamo la atención cuando la vi hoy por la mañana y adandole algo de lectura, me agrado y me encanto el autor de la misma es MagoAstral desde UC les dejo con la entrada tal cual la realizo.

Hola a tod@s, soy MagoAstral y en esta ocasión vengo con una herramienta, concretando un asistente para el desarrollo de exploits en python y para uno de nuestros depuradores favoritos GDB!!.  

Para los que no sepan que es un depurador les recomendaría este enlace Wikipedia - Depurador, una vez tengamos claro el concepto anterior simplemente decir que GDB (GNU Debugger), es un proyecto creado Richard Stallman y el cual podemos descargar desde el siguiente enlace gdb.

Ahora que tenemos los conceptos necesarios o al menos sabemos de que va el tema procedamos a hablar sobre PEDA.

¿Qué nos proporciona?

La respuesta es sencilla una mejora visual que la verdad se agradece; colorea y muestra códigos desensamblados, registros e información de la memoria durante el proceso de depuración. Pero no solo eso también nos proporciona diferentes funcionalidades que nos ayudarán a agilizar el proceso…

Algunos comandos:

aslr: Muestra o fija los ajustes de la ASLR de GDB.

checksec: Comprueba varias opciones de seguridad del binario (stack canaries, NX, etc…).

dumpargs: Muesta los argumentos pasados a una función cuando paramos en una instrucción de llamada.

dumprop: Hace un volcado a todos los ROP gadgets en un rango de memoria específico.

elfheader: Obtiene información de las cabeceras de un archivo ELF depurado.

elfsymbol: Obtiene non-debugging symbol de un archivo ELF.

lookup: Busca todas las direcciones/referencias de una dirección que pertenece a un rango de la memoria.

patch: Parchea el inicio de la memoria en una dirección con una cadena, cadena hexadecimal o entero.

pattern: Genera, busca o escribe un patrón cíclico en la memoria.

procinfo: Muestra información variada desde /proc/pid

pshow: Muestra opciones y ajustes de PEDA.

pset: Ajusta y configura PEDA.

readelf: Obtiene información de un archivo ELF ropgadget Obtiene los ROP gadgets comunes de un binario o una librería.

ropsearch: Busca ROP gadgets en la memoria

searchmem|find: Busca un patrón en la memoria y soporta búsquedas de expresiones regulares

shellcode: Genera o descarga los shellcodes comunes

skeleton: Genera una plantilla en python para un exploit

vmmap: Obtiene los rangos de un mapa virtual de una dirección, de una sección o secciones de un proceso depurado

xormem: Aplica XOR a una región de la memoria con una clave

Para una lista completa de los comandos se debería utilizar:

peda help

Instalación:

Para instalar PEDA la sintaxis sería la siguiente:

git clone https://github.com/longld/peda.git ~/peda  
echo "source ~/peda/peda.py" >> ~/.gdbinit

De esta manera hemos clonado el repositorio y añadido PEDA a la configuración de inicio del depurador (GDB), ahora cada vez que iniciemos GDB se cargará PEDA! ;)

Una imagen de PEDA en acción:

Personalmente os lo recomiendo y más si hacéis uso de GDB comúnmente bien en el arte de la explotación o bien en el arte de la ingeniería inversa, os hará muchísimo más sencilla la vida ami me encanta.

Un saludo,

MagoAstral

Fuente y Autor: MagoAstral

Toca buscar mas información y aprender a usar la herramienta! heee.

Regards,
Snifer

Share on
Support the author with

Avatar
WRITTEN BY