Libro "Fraude online. Abierto 24 horas", colección de Informatica64

Fraudeonline24

Me lo entregó en mano el Maligno el jueves pasado y ya me lo leído enterito, aunque este es uno de esos libros que no puedes leer una sola vez (hay demasiada  información que asimilar en una sola lectura).

Cuando vimos a Mikel Gastesi y Dani Creus (de S21sec) en su charla en el pasado Asegúr@IT Camp (aquí puedes ver las diapositivas) ya teníamos fichado el libro "Fraude online. Abierto 24 horas". La charla nos abrió los ojos y nos "acojonó" un poco a medida que iban explicando la infraestructura global que existe alrededor del malware y sus herramientas. Eso sin hablar de lo sencillo que resulta alquilar servicios, para entre otras cosas, realizar ataques DoS a diestro y siniestro por una mísera cantidad de dinero o del tremendo negocio que existe con las tarjetas de créditos y como fluyen esos números por todas las cuentas de todas las mafias detrás del malware o el fraude online.

Jan 31, 2012
RedesRecursos InformáticaHackingSeguridad

CTF #nullcon 2012: Web 3

nullcon1.jpg

En este nivel, además de una página para introducir el flag, se nos presentan otras dos páginas más: un para hacer login y la otra para registrarte.

En la página de login, se nos pide lo típico un nombre de usuario y una contraseña. Como no tenemos ninguna cuenta, vayamos a crearnos una.

Selection_001.png

Una vez introducimos la información y nos registramos, como de costumbre (esto lo hacía cada vez que ejecutaba alguna acción) miramos el código de la página web y nos encontramos con esto:

Jan 31, 2012
HackingCyberlabSeguridad

CTF #nullcon 2012: Web 2

nullcon1.jpg

En la segunda prueba nos encontramos con esto:

Can you redirect ME to hackim.null.co.in?

Donde ME apunta a http://www.nullcon.net//challenge/wlevel-2-proc.asp?page=index.asp

Como de costumbre y mirando el código fuente de la página, nos encontramos con una pista:


Aunque la pista en si no me decía mucho, después de buscar en Google algo como: web security 2616, salían muchas referencias al RFC 2616. ¿ok? Tampoco me daba mucha información. Luego por el irc daban la pista: split 2616. Eso es algo más.

Jan 31, 2012
SeguridadHacking

CTF #nullcon 2012: Web 1

nullcon1.jpg

Bueno empecemos con las pruebas Web. La primera prueba con la que nos encontramos nos pregunta:

Can you view the bytes in password.asp from Me?

Donde, Me es un enalace a http://www.nullcon.net//challenge/wlevel-1-proc.asp?input=test.txt .

Después de jugar un rato con el parámetro input, por el irc dieron una pista a la que hacía referencia al nombre que organizaba el evento: nullcon. Así que el resto de mis pruebas las basé en la inyección del carácter nulo (%00) en el url. Y después de poner dicho carácter en varios lugares, dí con esta url que nos pasaba de nivel:

Jan 30, 2012
HackingSeguridadCyberlab

CTF #nullcon 2012: Programación 5

nullcon1.jpg

Bueno llegamos a la quinta prueba de la categoría y que como veremos no tiene nada de programación, a menos que te quieras crear tu propio crackeador de MD5.

La prueba consistía en lo siguiente: tenemos una página dónde introducimos cualquier texto y nos devolvía un hash. Si miramos el código fuente de dicha página una vez nos ha dado el hash, encontramos una pista:

Es decir, password en este case es el texto que nosotros introducimos, a éste se le añade un texto que no conocemos (salt) y se calcula el MD5. Nuestro objetivo es averiguar dicha salt.

Jan 30, 2012
CyberlabProgramaciónHacking

CTF #nullcon 2012: Programación 4

nullcon1.jpg

En este reto nos encontramos con un problema de sustitución.

Estos son los datos que se nos dan:

Ciphertext:
06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14

How we Obfuscated:

Plain Text = nullcon
After charset Substitution = 14 21 12 12 03 15 14
Literal Substitution = fouteen twentyone twelve twelve three fifteen fouteen
After charset Substitution = 06 15 21 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 12 22 05 00 20 23 05 12 22 05 00 20 08 18 05 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14

charset = 00 means " ",  01 = "a", 02="b".... 26="z", 30 = "0", 31="1" .... 39="9"

Reiterate till you find meaning text

Tenemos el texto a descifrar (primer bloque de datos), luego tenemos el método usado para cifrar dicho texto y por último tenemos la correspondencia de caractares. Y dice que iteremos hasta encontrar un texto con sentido.

Jan 30, 2012
ProgramaciónHackingCyberlab

Reaccionando contra ACTA

stop-acta

NOTA: este excelente artículo es obra de nuestro amigo Newlog , que como ya sabéis, forma parte de la comunidad OverFlowed Minds donde puedes encontrar todo tipo de material sobre seguridad informática.

Cuando me disponía a escribir esta entrada, pensaba dar una explicación clara y concisa de lo que es o puede llegar ser el pacto internacional llamado ACTA. Sin embargo, navegando por Internet me he topado con un vídeo muy representativo que en dos minutos describe exactamente lo que podría ser nuestro futuro... Un futuro mucho más próximo de lo que creemos.

Jan 30, 2012
VariosSeguridad

CTF #nullcon 2012: Programación 3

nullcon1.jpg

En el tercer nivel nos encontramos con un trozo de código escrito en Brainfuck, un lenguaje un tanto peculiar y que claramente hace honor a su nombre. Algún le dedicaré una entrada en el blog.

El código con en el que tenemos que lidiar es este:

>+++++++[<+++++++>-]<---
.
.
>+++++[<+++++>-]<++
>++++++[<++++++>-]<+
>+++++++++[<--------->-]<+++
>++++++++[<++++++++>-]<++++++
>++[<-->-]<-
++
>++++[<++++>-]<+
>++++++++[<-------->-]<--------
>+++[<--->-]<---
>+++++++++[<+++++++++>-]<---
>+++[<--->-]<
>++++[<++++>-]<+
>++++[<---->-]<-
>++++[<++++>-]<---
>+++++++++[<--------->-]<-
>++++++++[<++++++++>-]<+++++
>++++[<++++>-]<+
>++++[<---->-]<-
>++++[<++++>-]<---
>+++++++++[<--------->-]<-
>+++++++++[<+++++++++>-]<++++
--
>++++[<---->-]<++
>++++++++[<-------->-]<-----
>++++++++[<++++++++>-]<+++++++
--
>++++[<++++>-]<-
-
>+++++++++[<--------->-]<++++++
+
>+++[<--->-]<
>+++++++++[<+++++++++>-]<--
+++
>+++++++++[<--------->-]<-
>+++++++++[<+++++++++>-]<++
---
++
>+++[<--->-]<
>++[<++>-]<+
>++[<++>-]<++
>++++[<---->-]<++
>++++++++[<-------->-]<++
+
+++
>+++[<--->-]<---
>+++++++++[<+++++++++>-]<-
>+++[<--->-]<--
>++++[<++++>-]<---
>+++[<--->-]<
>++[<++>-]<++
>+++[<--->-]<--
>+++++++[<------->-]<-----
>++++[<---->-]<++
>++++++[<++++++>-]<+++++
>+++++[<+++++>-]<++++
>++++++++[<-------->-]<------
>+++++++++[<+++++++++>-]<++++++++
>+++[<--->-]<-
>++[<++>-]<++
>+++++++++[<--------->-]<----
>++++++++[<++++++++>-]<++++
>+++[<+++>-]<++
>+++++++++[<--------->-]<++
>+++++++++[<+++++++++>-]<++++++
>++++[<---->-]<--
>++++++++[<-------->-]<-----
>+++++++++[<+++++++++>-]<++++++
>++++[<---->-]<++
+++
.
>+++++++++[<--------->-]<+++++
>+++++++++[<+++++++++>-]<++
>++++[<---->-]<++
>+++[<+++>-]<
>+++[<--->-]<-
>++++++++[<-------->-]<----
>++++++++[<++++++++>-]<+++++
>++++[<++++>-]<+
>++++[<---->-]<+++
+++
>+++++++++[<--------->-]<+++++
>++++++++[<++++++++>-]<++++
>++++[<++++>-]<+++
>+++++[<----->-]<+++
>++++[<++++>-]<+
>+++[<--->-]<---
>++++[<++++>-]<---
>+++++++++[<--------->-]<--
>++++++++[<++++++++>-]<+
>++[<++>-]<+
>++++[<++++>-]<--
>++++[<---->-]<+
>++++[<++++>-]<---
>+++++++++[<--------->-]<-
>+++++++++[<+++++++++>-]<++++++++
>+++[<--->-]<-
>++[<++>-]<++
>++++++++[<-------->-]<-------
.

Si buscas por Google hay muchos intérpretes y conversores para este lenguaje. Si ejecutamos dicho código tal y como está, esta es la salida: ..l.. Después de mirar un rato y depurar un poco el código, la solución a la que llegué fue poner un ‘.’ (punto) al final de cada línea que no tenía punto. El punto significa poner el byte actual en la salida. Así tras haber hecho eso y ejecutar de nuevo la salida que obtenemos es:

Jan 30, 2012
CyberlabProgramaciónHacking

CTF #nullcon 2012: Programación 2

nullcon1.jpg

En el segundo nivel de está categoría se nos pedía la suma los términos medios de las primeras 1337 del triángulo de Pascal.

Pues nada vistazo a la wikipedia, problema conocido, seguro que alguien ha escrito el algoritmo en Ruby, lo bajo, lo modifico, quedándome de esta forma:

#!/usr/bin/env ruby

def pascal(n)
  p=[1]
  sum = 0
  while(p.length<n)
#    puts p.join(" ")
    p.join(" ")
    p=Array.new(p.length+1) {|i| 
      a=i0 ? p[i-1] : 0
      a+b
    }
    if p.length.odd?
      sum = sum + p[p.length()/2] 
    end 
  end
  return sum+1
end

puts "sum: " + pascal(1337).to_s

Y cuyo resultado al ejecutarlo y por lo tanto nuestro flag:

Jan 30, 2012
ProgramaciónHackingCyberlab

CTF #nullcon 2012: Programación 1

nullcon1.jpg

En la primera prueba de programación nos encontramos con este texto:

Mfp ey zwvo fvat rjx hwprdrr lb nawzh tnfpc: Anj icvlu, hjgy Kbffhg, zk hjp gm nso nntjj, phf sw vawwhnwer, pcum nu oeq ewllxqmqit

El cual es nuetro flag cifrado. Por lo que tenemos que averiguar como hacerlo.

Si miramos el código fuente de la página de este reto, nos dan un pista:

Rápidamente nos damos cuenta que es un cifrado basado en la rotación de caracteres dependiendo de la posición del mismo.

Jan 30, 2012
HackingCyberlabProgramación