Buenas de nuevo, vamos a terminar los retos básicos de https://atenea.ccn-cert.cni.es
Esto es la tercera parte, si queréis ver los anteriores:
Parte 1
Parte 2
Reto 13 – Variable
Enunciado:
Para superar este reto, deberás identificar, entre las siguientes declaraciones de variables, cuál de ellas tiene asociado un tipo de datos erróneo:
byte num = 44; short med = 1223; long lmax = 839492019487; float mreal = 112.31f; double rbig = 761132.4321; boolean bbin = true; int max = "1000"; char lett = 'A';
La solución al reto es el nombre de la variable (por ejemplo: vbar), en el formato de la plataforma.
Solución:
Cualquiera con unas nociones basicas de programación se dará cuenta de que a la variable max se le ha asignado una cadena en vez de un entero.
La solución por tanto es: max
Reto 14 – Variable 2
Enunciado:
Para superar este reto, deberás encontrar el equivalente en BASH, de la siguiente línea de código en BASIC:
PRINT “Atenea”
Solución:
Conociendo un poco la notacion de bash resolveremos fácilmente este reto; se utiliza el comando echo para mostrar cadenas por pantalla:
echo "Atenea"
Reto 15 – Python
Enunciado:
Para superar este reto deberás obtener el valor de la variable result del siguiente script en python, que te dará el password que necesitas.
Solución:
Para obtener el valor de una variable en python y mostrarla por pantalla usamos print, asi que bastara con añadir al final del fichero la linea:
print result
Para esto vamos a usar un simple comando de bash, y ejecutamos el script:
echo "print result" >> script-6a21d37e6d6a4c87c06ba3ec40e28e0c.py python script-6a21d37e6d6a4c87c06ba3ec40e28e0c.py
Reto 16 – C
Enunciado:
Para poder superar este reto deberás compilar y ejecutar el siguiente código en C.
Solución:
Ni si quiera hace falta compilar el programa, bastaría con ver el contenido de la variable que muestra por pantalla.
Pero el objetivo de este reto no es ese, así que vamos a compilar y ejecutarlo:
gcc pass-8fee4bb1bd3340423ecda42c36b5ba5a.c -o pass ./pass
Reto 17 – Java
Enunciado:
Para poder superar este reto deberás descompilar, es decir, obtener el código fuente, del siguiente programa compilado de Java, para obtener el valor de una variable en concreto.
Solución:
Para decompilar los .class de java podemos usar esta web: http://www.javadecompilers.com/
O hacerlo a mano desde la terminal
jad main-0be7342133d811710a0b94038f70e423.class
Buscando entre el código obtenido vemos rápidamente el contenido de la variable deseada: String ThisIsTheVariableYouAreLookingFor = “30853506b923083a”;
Leave a Reply