martes, 19 de diciembre de 2017

Writeup - HackThis - Real 4



Real Level 4


Descripción del reto

Tenemos a una persona que ha vendido un artículo de segunda mano a muy buen precio, el problema es que él ha enviado el artículo y el cliente se niega a pagar y a devolverle el artículo enviado.

Dicha persona nos facilita esta información:

- email* beta (Gestor de correo eléctronico)
- Planet Bid (Plataforma de compra/venta donde ha vendido el artículo)
- Safe Transfer (Plataforma sistema de pago "seguro")
- Top 10 (Un listado de las 10 contraseñas mas usadas)

La víctima sólo quiere recuperar su dinero (ni mas, ni menos). Por lo que el reto consiste en entrar el sistema de manera "ilegítima" y devolverle el dinero.

Datos que tenemos:

1. Nombre usuario de la víctima: Revoked.Mayhem
2. Nº de cuenta para transferir el dinero: 64957746


Comienza el reto:

Lo primero (como cualquier pentesting) será recopilar toda la información necesaria para poder ir "investigando" y usando técnicas que nos ayuden a vulnerar el sistema web de alguna manera.

Empezamos con Planet Bid, accedemos a la web y nos dirigimos a la sección de "Account" donde nos encontramos con este formulario.

Abajo, existe un enlace bastante "sospechoso" que pone "admin" y al hacer clic nos coloca el usuario en el campo "Username:", por lo que sólo necesitaremos saber la contraseña.


Recordemos, que disponemos de un TOP 10 de las contraseñas mas utilizadas, vamos a probar con cada una de ellas. (No hace falta usar ningún script, ya que sólo son 10 contraseñas)


Una vez dentro, tenemos dos interesantes apartados, "Members db" que nos muestra un listado de los miembros (id, nombre y correo) y "Bids_db" que podemos visualizar las transacciones por el ID del usuario e importe.


Ahora deberemos de descubrir, quien ha sido el usuario que se niega a devolver el producto y/o a pagar.

Listado de los usuarios de DB


Listado de las últimas transacciones.


Con el ID 31 tenemos a "Revoked.Mayhem" y vemos en el listado de transacciones, que en la columna Seller sólo tenemos uno con el ID 31 y que el comprado tiene ID 11.

Con el ID del comprador, ya podemos ver en el listado de usuarios que nombre tiene y su correo electrónico.

Datos del comprador:

ID = 31
Nombre = nemisis
Email = jfelliot@mail.com

Sólo nos hace falta saber la contraseña, analizando la web, vemos que en la barra de dirección se encarga de imprimir las variables view.php?members&1=user&2=email. ¿Pero que ocurriría si cambio email por "pass"?


Efectivamente, nos imprimiría en la tabla las contraseñas "cifradas", ahora necesitamos descifrar el hash para obtener la contraseña.


He usado la web https://md5hashing.net/hash para descodificar la contraseña, la contraseña es "chicken".

ID = 31
Nombre = nemisis
Email = jfelliot@mail.com
Contraseña = chicken

Ahora necesitamos la credenciales de acceso para acceder a nuestra meta, que sería lograr entrar al sistema web de "Safe Transfer" y devolver el dinero.


Nos dirigimos al correo y vemos que existe un correo enviado desde "Safe Transfers", entramos en él y vemos el usuario y contraseña para poder acceder al sistema.

Usuario: nemisis
Password: i.am.awesome

Ahora si, ya podemos acceder a la cuenta y devolvernos el dinero.

Ya estamos dentro, identificados como "nemesis" y con £257,64 procedemos a devolver el dinero.


Pulsamos en "Transactions" y cumplimentamos los dos campos del formulario, recordemos que en el panel de Planet Bid vimos la cantidad "estafada" y en el principio del reto, nos indicaba el número de cuenta de nuestro amigo.


 Pulsamos en "Credit" y......

Vaya.... Nos han pillado! ¿Que ha podido pasar?

Por lo que nos dice el mensaje, ambas plataformas (Planet Bid y Safe Transfers) están comunicadas, por lo que han debido de registrar nuestra IP y no es la misma que la del usuario legítimo.

Entramos como "admin" (acordaros que la clave era "asdfg") y vemos que por razones de seguridad se guarda nuestra IP. Pulsamos en "view".

Hacemos clic en "Clear log" y borramos el registro de IPs.

Volvemos a realizar la transferencia y ahora....¡Si!




Previous Post
Next Post

post written by:

0 comentarios: