Laboratorio: ataque de inyección SQL, enumerando el contenido de la base de datos en bases de datos
Last updated
Last updated
Ahora lo que comprobamos es que retorna 200 ok la response, significa que esta tomando en cuenta todos los parametros que le dimos, podemos de esos reemplazar el primero ‘abc’ por el atributo “table_name” de la tabla “information_schema.tables” y el otro interpretarlo como NULL.
Parece que es exitoso, si vemos la pagina:
Efectivamente podemos ver los nombres de las tablas de las tablas, vamos ahora a crear un comando que nos ayude a obtener la tabla especifica con la columna especifica para obtener la contraseña de administrador.
Encontramos la tabla que es de users “users_eqaeyp” , vamos con el comando:
Ahora si vamos con los comandos que sirvieron, directamente de la tabla users_eqaeyp →
Encontramos la columnas con la informacion correspondiente, username y password, ahora simplemente vamos a obtenerlas:
Ahora simplemente accedemos como admin y listo.
pg_user = es una tabla directamente de la BD administrada por PG_ADMIN por eso esta ahi por default, y por eso la informacion nunca la iba a encontrar ahi por mas de que yo creara nuevas consultas, ademas cuando pude encontrar los usernames me mostro postgres como un posible nombre de usuario lo cual ya es obvio que no es una tabla directa de la aplicacion sino que es una tabla por defecto de la BD postgres con PG Admin, asi que la proxima nos centramos en tablas que tengan nombres especificos creados por la persona para la aplicacion.
Listo pripra tenemos username y password listos, ahora si sapo perro vamos a crear una consulta para obtener los valores de esa tabla.
eo1hlcn0ktv0t7dnnzwj:administrator
Obtuvimos pass y username → Admin