Bienvenidos a esta nueva clase en la cual estaremos utilizando ese QR inyeccion para poder guiarnos
como administrador en una página.
Para ello vamos a ir a nuestra plataforma de tri akemi y luego buscaremos esto o huasca una vez hayamos
hecho la búsqueda.
Vamos a ingresar a este run.
Queremos por acá.
Nos vamos a unir.
Y ahora solo hace falta iniciar nuestra máquina para hacer las prácticas.
Recuerden que necesitamos conectarnos a la red privada de Detroit akemi, así que vamos a hacer sudo
open depende.
Y luego en nombre de mi archivo.
Ya estamos conectados.
Una cosa que a mi me gusta hacer es dividir esto en dos horizontalmente y llevar esto hasta arriba en
caso de que tengan problemas de conexión solamente bajo, esto un poco para ver si el PPN no ha perdido
la conexión.
Y luego regreso a la normalidad.
Entonces esperemos a que esto cargue.
Vamos a ver si está bueno, todavía no ha cargado, pero me gustaría mostrarles esto de acá.
Pueden ver una serie de tareas, conectarnos a la red de ellos, configurar Pursuit.
Si todavía no lo han hecho, nosotros ya lo hicimos.
Hay un walkthrough a través de la aplicación en las cosas que se pueden hacer, es una aplicación bastante
bonita, ve bastante realista y moderna y por acá está lo que nosotros vamos a estar haciendo.
La inyección y la inyección va a ser para guiarnos como el administrador.
Vamos a revisar si ya carga, todavía no..
Finalmente cargó y como podemos ver, esta página es una en la cual podemos realizar compras de bebidas.
Ahora lo que vamos a hacer es ir a la parte del lobby y ver si hay inyección SQL basada en error.
Entonces vamos a hacer la prueba de la comida simple.
Veamos que resulta como podemos ver.
Hay un error.
Entonces este error no ha sido como otros que hemos visto hasta ahora.
Me gustaría intentar interceptar la petición con Parfit y ver si así poder a mayor profundidad lo que
está ocurriendo acá.
Entonces vamos a hacer eso.
Habilitamos Foxy Proxy y vamos a Irán, a Irán, el Intercept, el Switch.
Ahora que el Intercept encendido, hacemos lobby.
Y por acá tenemos la petición, podemos ver aquí está el e-mail y aquí está el password que están viajando.
Mandamos esto a repetir y ahora vamos a enviar la petición desde acá y se fijan acá están mostrando
cosas mucho más interesantes.
Esto no estaba siendo reflejado desde acá y esto es muy importante porque podemos ver de que no solamente
tenemos que valernos de los errores que son mostrados aquí en nuestra página, sino que también cuando
nosotros hacemos las peticiones por aparte, por medio de Bassett, podemos encontrar información mucho
más sensible y ahora por aquí podemos entender cuál es la consulta que se está realizando.
Entonces está pasando un select asterisco from users donde el correo es igual.
Esto y la contraseña es igual a esto que ustedes ven por acá.
Y qué está pasando?
éL está pidiendo absolutamente todo, todos los campos, todas las columnas donde el correo y la contraseña
estén correspondiendo a lo que está siendo ingresado por acá.
Es decir, si hay un correo que sea igual a la arroba hola.com vivir una contraseña que sea igual a
Hola en el desierto.
Vuélveme todas las columnas donde el correo y la contraseña son correcto.
Así que ahora a intentar hacer nuestro ataque vamos a decir por acá por uno igual a uno y probemos a
ver qué pasa si ocupamos este símbolo.
Y también recordemos que necesitamos apagar el Intercept y ahora podemos ver de que hay un error.
Este posiblemente sea porque la manera de comentar debería ser la correspondiente a SQL Server.
Problema ahora que obtenemos hacemos login y excelente.
Estamos dentro.
Si revisamos qué cuenta es, podemos ver qué es la cuenta del administrador.
Entonces ahora déjame explicarte por qué esto ha funcionado.
Voy a abrir por acá un documento de texto.
Vamos a abrir más faut y ahora déjeme copiar la consulta que se estaba haciendo.
Esta es.
La que vemos por acá.
Copiamos, pegamos.
Está pasando que por acá.
En la parte del correo estoy ingresando una comida.
Luego yo sé también que estoy ingresando un comentario para que todo lo vea acá.
Ya no cuente.
Básicamente todo esto desaparece al hacer mi comentario.
Luego hay un horror, uno igual a uno.
Entonces básicamente es la consulta que estoy haciendo, porque aparte de la contraseña y sé que no
importa en la consulta.
Entonces yo estoy pidiendo que me devuelva todas las columnas donde el correo es igual a vacío o uno
igual a uno.
De esta manera yo estoy logrando validar de que mi consulta me devuelva súbitamente todo y cuando él
me devuelve todo va a pasar lo siguiente.
Generalmente en las tablas de bases de datos, cuando hablamos de las tablas del usuario y contraseña,
el primer usuario suele ser el administrador.
Entonces aquí, cuando yo intento guiarme, mi aplicación lo que hizo fue tomar las credenciales de
la primera persona que se encontraba en la tabla y como esta primera persona era el administrador,
yo pude lograr entrar con sus credenciales y el ataque ha sido un éxito debido a eso.
Ahora también me gustaría hablarle acerca de algo interesante que está ocurriendo con esta aplicación.
Regresemos a ver Swett y veamos de qué acá el correo si está siendo enviado correctamente con lo que
una comida y por acá hay una comida que se envió.
Y qué pasó con la contraseña si yo no mandé esta gran serie de caracteres?
Yo mandé solamente este símbolo.
Entonces, esto que ustedes ven acá es un jazz MD5.
Cómo lo sé?
Bueno, es fácil de reconocerlo.
Los Jaller MD5 suelen ser así un montón de números combinados con letras minúsculas.
Ahora lo que vamos a hacer es copiar esto y vamos a ir a Firefox con una página llamada Cracs Station
punto net.
Acabamos de ingresar nuestro jazz.
Michel Capcha Llevamos a crackear este año como pueden ver.
éL acaba de analizar el tipo de MD5.
Y Mijas era éste y el resultado que Kiba el jazz es una coma simple.
Tratemos de hacer una prueba.
Qué pasa si la contraseña fuese el Louvre?
Mandemos esto y ahora vamos a copiar esto de acá.
Veamos si este es corresponde.
Angelou pegamos.
No soy un robot.
flaites.
Edificamos y ahora crackear el jazz, como pueden ver, está ocurriendo algo bastante interesante.
El parámetro de contraseñas está codificando de la siguiente manera que no está indicando esto.
Esto nos está indicando que seguramente en la base de datos las contraseñas cuando se guardaron fueron
encriptadas por este método.
Pero este método es ciertamente el de más de cinco seguro en el sentido de que de una sola vía, si
encripta una contraseña, no hay manera de desencriptar el jazz.
Es decir, si yo veo esto, no hay forma de que yo pueda revertir el proceso que me hizo allí.
Entonces me dirán uds.
Si no hay forma de revertir el proceso, como es que aquí esta página logró saber que este jaez correspondía
congelo.
Bueno, eso es por una razón muy simple y es que existen grandes bases de datos que tienen guardadas
las contraseñas más comunes y sus fallas correspondientes.
Por ejemplo, contraseñas comunes son o pueden ser.
Pueden ser un dos tres cuatro cinco seis y pueden ser dos o tres.
Y lo que pasa es que esta base de datos guardados es que son generados por estas contraseñas y cuando
nosotros ocupamos aplicaciones como ésta, las bases de datos van y buscan al jazz y luego ven qué palabra
fue la que generó este auge.
No es que haya un proceso de revertirlos, sino que simplemente existen grandes bases de datos ya con
palabras que suelen ser comunes.
Ya con esto ha acabado la clase.
Espero que haya gustado, ya hemos visto la manera en la cual puede ser peligrosa la inyección SQL para
poder guiarnos como administrador antes de pasar a la siguiente sección en la cual hablaremos del ataque
XSS.
Te recomiendo que hagas la tarea.
Nos vemos en aproximas acción.