Vous êtes sur la page 1sur 7

NAVAJA NEGRA CTF

WEB 1
To complete this level found the key in this page


La pagina de la prueba muestra un botn que cambia de posicin aleatoriamente
cuando el cursor. Visualizando el cdigo fuente desde el navegador no se observa
ningn codigo oculto.

El siguiente paso es descargar la pgina con wget y analizarlo.
Lo abrimos con vi aparece el texto oculto:
Password: 6e3e92ebfcec506d0cc56f24a929ac11

WEB 2
To complete this level recovery the password from web admin with sql inject!


El problema nos propone utilizar injeccion SQL para 'recuperar' la contrasea del
administrador de la pgina, para ello utilizamos la herramienta sqlmap



La herramienta nos informa de que ha encontrado una SQLi en el parametro u del tipo
UNION con 2 columnas.


Una vez encontrada la vulnerabilidad, podemos usar la opcion --dump de sqlmap,
aunque tambien hacer el proceso manualmente y utilizar
u=Patatas' UNION ALL SELECT CONCAT('|',user,'|',pass,'|'),NULL FROM users#


Una vez obtenida la contrasea 78a2109f8519940bb553 comprobamos que no se trata
de un hash

STG 1
Recovery the key in message on this Image!


La prueba consiste en recuperar una clave dentro de la imagen, descargandola y
analizandola encontramos una cadena de texto sospechosa al final del archivo
codificada en base64.
Lo convertimos de base64 a ascii con el comando 'base64 --decode'
echo TXkgc2VjcmV0IGNvZGU... | base64 --decode
My secret code: 1ef1d8347331afb75b822819fd4e6d3b

PHK 1
You are a phreaking and you go make a social hacking, you go discovery the credit card
number from a client!


En esta prueba nos piden que averiguemos un numero de tarjeta de credito que se
esconde en una grabacion en mp3.
En la grabacin escuchamos unos tonos que se corresponden con el numero de tarjeta,
asi que solo se necesita convertir esos tonos a numeros.

Para ello se han utilizado dos servicios online, media.io para convertir el mp3 a wav, y
http://dialabc.com/sound/detect/ para detectar y extraer los tonos DTMF.

Los tonos que nos interesan se encuentran a partir de los 13 segundos
5461765425671065

PHK2
You capture one voIP call, now you go recovery the hash and original password of the
communication!
Se nos pide que "recuperemos" la contrasea a partir de una captura de una
comunicacin voIP.
Extraemos el hash con sipdump y lo crackeamos con sipcrack y el diccionario de
rockyou.
El hash y contrasea son 3c58ee4488a90ad08d67a24b4c2c9beb:passw

CRP1
To complete this level generate the md5 from userKey.
You need brute force alphanumeric with 8 characters


Se nos pide que encontremos una cadena que sus ultimos 10 caracteres del hash md5
sean 8cf8c3dbc1, como pista nos dicen que solo busquemos con una longitud de 8
caracteres alfanumericos.

Modificamos el script de Python que nos ofrece la prueba para hacer fuerza bruta.
Le aadimos un parametro una cadena inicial, permitiendo ejecutar varias instancias
del script en la misma o distintas maquinas, cada una con una un caracter inicial (a, b, c,
etc).

En unas pocas horas encontramos la cadena bm5y8451, una de las posibles soluciones.

CRP2
Decrypt the MSG and see the key to complete this level!
73 85 83 92 85 94 40 83 8f 84 85 5a 40 81 53 86 81 58 55 86 57 53 84 55 55 56 55 84
82 55 57 57 50 59 55 84 52 58 53 85 86 57 56 55 51


Convertimos el mensaje de Hexadecimal a ASCII y no obtenemos el mensaje,
observamos que los caracteres mayores a 7F no son mostrados en ascii
s?????@????Z@?S??XU?WS?UUVU??UWWPYU?RXS??WVUQ
Probamos con el cifrado mas sencillo para cadenas de texto, el cifrado Cesar,
adaptandolo al alfabeto ASCII. Con este script intentamos descifrar el mensaje


En la linea correspondiente a un desfase de -32 aparece el mensaje descifrado.
Secret code: a3fa85f73d5565db577095d283ef7651

CRK1
You need analyze this program and use the md5 of the
password to complete this level!


La prueba consiste encontrar la contrasea del programa.
En un primer analisis observamos que nos salta un mensaje
con la palabra "Error" cuando la contrasea es incorrecta.
Buscando cadenas de texto encontramos una en Unicode
que nos gusta 'Enhorabuena, has superado el reto.'

Cargamos el programa en OllyDBG y buscamos en memoria
la cadena anterior, y encontramos otra cadena en Unicode justo antes de la anterior
'Albacete', que sospechamos puede ser la contrasea.

Ponemos un breakpoint en su direccion de memoria y descubrimos que el programa


compara esa cadena con la correspondiente a User 'Patatas'. No hemos encontrado la
contrasea, pero sabemos que el user correcto es 'Albacete'.


Hacemos la busqueda al reves, con el programa detenido en la instruccion que compara
el usuario, buscamos la cadena Unicode 'Fritas' en memoria y le activamos un
breakpoint cuando se lea en esa direccin de memoria. De esta forma el programa se
deteniene en la comparacin de la cadena 'Fritas' con '...N....N', la contrasea correcta.

Por ultimo, introducimos el usuario y contrasea en la aplicacin para verificar el
resultado.

CRK2
This program need 2 serial numbers but I only want one serial to complete this level!
Send me the md5 of one serial

La prueba consiste en encontrar el nmero de serie de un programa para linux.


En un primer analisis se ejecuta el programa para ver su comportamiento y se buscan
cadenas de texto con el comando strings.
El programa nos solicita 2 numeros de serie, y devuelve las cadenas 'Bad Hacker!' o
'Tray Again!'

Procedemos a depurar el programa, en un primer momento con gdb donde
encontramos bastantes operaciones matematicas en ensamblador, por lo que pasamos a
decompilarlo con IDA Pro, donde obtenemos su cdigo fuente.



Analizando el cdigo, llegamos a la conclusin de que la cadena "Bad Hacker!" aparece
cuando uno de los dos numeros no es un numero primo. Tambien vemos como el
producto de los dos numeros de serie debe ser 803292082067.

Por tanto, los numeros de serie deben ser los 2 factores primos del numero anterior.

Una busqueda rpida del numero en wolfram alpha nos resuelve el problema.


Los numeros de serie son 880543 y 912268, sin importar el orden.

Vous aimerez peut-être aussi