Entradas

Mostrando las entradas etiquetadas como Buffer Overflow

Solución Examen 7 | Curso IDA Pro (Ricardo Narvaja)

Imagen
Para resolver el examen 7, comenzamos revisando las variables y renombrandolas, por ejemplo, var_D8 se incia en 1 al igual que var_D0 y var_D4 inicia en 45 y ningúno parece cambiar, por ende podemos cambiarles el nombre a algo mas apropiado. Además vemos que se crean dos buffer de 200 en Dst y Dest, entonces les pongo nombres como Buff1_200 y Buff2_200.  Al final como siempre verifica que exista el archivo example.txt Sin muchos cambios, extraen 200 bytes del archivo, se guarda en buff1 y luego se copia en buff2 y como ambos son de 200bytes no hay problemas. Al final verifica que constante 1 sea 1. Luego vamos a la función de checkeo que tiene como puntero la variabe File. y en la función se hace un _sprintf de el string "Bieeeeeeeeeeeeeeeeeeeen ? con %s" y hace un sprint f de esto al puntero mas 0xDC y más abajo pasa lo mismo al comrobar que un valor +0xD0 es 45. Entonces nos ayudamos creando una estructura con las variables. Con esto comprobamos que el ...

Solución Examen 4 | Curso IDA Pro (Ricardo Narvaja)

Imagen
@Jlcmux Comenzamos este examen abriéndolo y vemos que se parece bastante a los anteriores. Vemos que ahora los dos buffer "Dst" y "Dest" valen lo mismo: 0xC8=200, y también las variables "var_D4=1" y "var_D0=0x45=E". Luego igual que antes se revisa que exista el archivo y la ejecución continúa. Luego se ve que se toma un elemento de 200bytes de File y se guarda en Buff2, (El segundo buffer de 200bytes), lo siguiente es que se toma dicho elemento y con strcpy se copia a el Buff1. Lo siguiente que hace es comprobar que constante_1 sea igual que 1, pero eso ya está, entonces realmente no tendemos que hacer nada especial por ahora. En este punto vemos que se toma el valor de Buff1 que viene siendo lo que hay en el archivo y se mete a la función sub_401010 que tiene cara de ser donde se prueba que todo este bien para mostrar el mensaje de "Chico Bueno". Vemos entonces que está función toma "arg_0" que se...

Solución Examen 3 | Curso IDA Pro (Ricardo Narvaja)

Imagen
@Jlcmux Hoy trataremos de resolver el Examen 3 de este grandioso curso. Primero como siempre, abriremos el ejecutable con IDA vemos que comienza exactamente igual que el examen anterior Se crean los mismos buffer con los mismos tamaños y revisa la existencia de el mismo archivo. Luego el siguiente paso también es igual que el ejercicio anterior, así que entramos a la función. En mi caso le puse el nombre "Checkeo". La función es la misma excepto por una función interna que no estaba antes, y está justo antes de mostrar el mensaje de "chico bueno". Si entramos vemos que tiene una variable "Str1" y un argumento, dicho argumento viene siendo el "Buffer_200" que para el momento que se ejecuta esta función es el contenido del archivo. Vemos también que se mueve "1" a eax y ese valor luego se multiplica por 0x28=40, luego se toma ese valor con movsx, es decir, ecoge el byte numero 41 del archivo. Luego vemos q...

Solución Examen 2 | Curso IDA Pro (Ricardo Narvaja)

Imagen
@Jlcmux Hoy vamos a seguir con la temática del curso de IDA Pro que pueden encontrar los links en el primer post :. Bien, comenzamos abriendo el ejecutable con IDA y vemos que se parece mucho al anterior. Y de la misma forma se comprueba que exista un archivo llamado example.txt. Pero vemos que se reservan dos espacios de memoria, el primero de 0x12C=300bytes que se guarda en la variable "Dst" y luego otro de 0xC8=200bytes que se asigna a "Dest", También vemos otra variable "var_138" que se le asigna el valor de "1" y parece ser que nunca mas cambia, entonces podemos renombrarlo como "Constante_1" o algo parecido, luego se abre el archivo para comprobar que existe y la ejecución continúa.    En la segunda parte vemos que comienza usando la función "fread" con los argumentos de "File", "1" y "0xD2" y el destino será el buffer de 300. Esto quiere decir que va leer un elemento de ...

Solucionario born2root - Vulnhub CTF

Imagen
El día de hoy haremos el solucionarlo del CTF "born2root" Desarrollado por  Hadi Mene  y puedes descargar desde  aqui . El escaneo de puertos da los siguientes resultados: Primero, reviso el servicio web. Revisando dichos directorios encuentro un archivo de texto llamado "VDSoyuAXiO.txt" en el path /icons/ que contiene una llave privada. Así que la descargo. Otra pista, surge al revisar el index principal de la web, que indica que hay un usuario llamado martin Así que intento iniciar sesión por ssh con la llave y ese usuario. Este login permite iniciar con cualquier contraseña. NOTA : Aunque el programador usó un script en python para aceptar o rechazar la conexión, por medio de dos posibles contraseñas: "secretlab" o "secretsec". Parece no haber funcionado bien y deja iniciar sesión sin importar lo que pongas. Luego de hacer un poco de enumeración encuentro la carpeta /home/haidi con algu...