viernes, 25 de mayo de 2018

ConPilar CTF WriteUp: Brasil



El pasado 21 de Mayo se dió por finalizado el CTF que organizaron los chicos de ConPilar.

Tuve el honor de ser contactado por algunos de los organizadores para que les "probara" un par de pruebas que habían preparado para dicho CTF, en concreto las pruebas que me pasaron para testear fueron los paises: Brasil y Rusia.

He de añadir que la invicta ha sido Rusia (será el proximo WriteUp) y Brasil sólo ha sido resulto por un equipo.

Yo os voy a contar cómo resolví Brasil.



Al lio :)

El contenido de la prueba era el siguiente:

Hemos encontrado un fichero que se llama logins, con este contenido:

id1 6eX9863kTXTLCB26
id2 PP7UfJdPkIGwPQGy
id3 HgnKU6eW9GvW4wCw
id4 2M6G3Um3YQxTJpMw 9999996966666999969999999966999699996696696966666996996666996699999696999
6999999699666666699696999699696999999969699969699969696996669669966666966
6669999696969699666996999999966699666969996699666666666696999999666996699
6699969666999699966999996969696996999696966999966969669669696966966666699
9699999699969999969696999696666999666969666699666966969699996966966999669
6999696696696669696669969696666969669696969666669699996999996666666696666
9996666666669999999696969696969999999966666966996996996966666996999696969
6666966969996996999696669996999696999699699969696969666669699969966666966
99666969696666699999999696669696669999999

Podrías encontrar la contraseña de dicha cuenta de Yahoo?

******
La pista que facilitaban era: 25x25=?
******

Bien, nada más verlo me dije "Esto ya lo he visto antes, pero donde?"

Recordé una conversación con Rafa Sojo @RaSr98 donde me explicaba que en la CyberOlimpics se habían encontrado una prueba de este tipo con ese cifrado en concreto, identificado como SSSS (el cual, y todo hay que decirlo lo usamos en el diseño de una de las pruebas del CTF de Qurtuba Security Congress (la CON de Córdoba).

En concreto hablamos del cifrado Shamir Secret Sharing Scheme, de ahí las siglas, y no voy a explicar su funcionamiento, nuestros amigos los conejos de Follow The White Rabbit se encargaron de hacerlo en este post

Pues dicho y hecho, tenía 4 id así que todo encajaba con el funcionamiento de Shamir y luego me pelearía con la secuencia de numeros 9 y 6, la cual, pintaba a ser un binario con los números cambiados.

Desde la siguiente web (http://www.asecuritysite.com/Encryption/shamir) probé a descifrar los id, pero algo no iba bien, Shamir genera partes acabada en un = como si se tratara de un B64.




 Así que la primera en la frente :(

Bueno vamos a los números, lo primero que hice fué cambiar los 9 por 0 y los 6 por 1.



Y ahora quedaba descifrar ese binario, hay cientos de formas y cientos de páginas web, yo localicé una web y pegué el binario que obtenía:



Esto no tenía sentido por ningún lado, incluso cambiando el 9 por 1 y el 6 por 0, al reves vamos.

Durante un momento lo dejé ahí y me fuí a jugar con los niños y al ver en una de las cajas de los juguetes una "cosilla", fué entonces cuando caí en la pista:
25x25= ?

El resultado es 625 cuántos números tengo?


625 es el resultado, así que si tenemos un cuadrado de 25x25.

¿Qué figura representa un cuadrado perfecto?

Venga va, que ya lo tenéis a huevo!

Un código QR es un cuadrado perfecto :)

Antes de nada, formateé un poco el "churro" binario que tenía en bloques de 8 (el por qué imagino que lo sabéis):


Gracias a mi compi Miguel Kazabar por pasarme el EREG 

Busqué por internet algún conversor de binario a QR, y me fuí a la página https://bahamas10.github.io/binary-to-qrcode/ 

 
Nota: tuve que probar haciendo los cambios de 9 a 1 y de 6 a 0 y viceversa, siendo el correcto el de 9 a 0 y de 6 a 1, luego había que marcar la opción de "Reverse colors" para que se pintara el QR de forma correcta

Ésto yá tenía sentido :) !!!!

Al leer el código QR que habíamos encontrado me daba la siguiente url:

https://xploitz.net

Pues a ella que vamos, no? Ya está casi listo el reto

Dentro de esa web, había que ir al apartado: Buscar contraseña, así que tocaba ir probando los distintos ID que nos facilitaban para encontrar la clave de Yahoo ;)

 
Tengo que decir que sin aceptar la publicidad de la web no se podía sacar, muy molesto la verdad
Había que ir probando los IDs hasta encontrar el de Yahoo y........  voila!



Ya tenía la flag!!!!!

He de decir que me lo pasé pipa haciendo esta prueba, super original y que no la había visto en ningún CTF de los que he jugado hasta ahora.

Sin duda, un gran ingenio de la organización de ConPILAR y de mi gran amigo Eloy en twitter lo encontráis como @informaticaeloy

Sed buenos!
@jdangosto

 








0 comentarios:

Publicar un comentario