Explotando de manera practica una pagina vulnerable a SQL Injection manualmente
La famosa vulnerabilidad de SQL Injection nos permite inyectar consultas para acceder a información restringida y se produce cuando no se validan correctamente las entradas en el desarrollo de las aplicaciones como consecuencia podemos obtener información muy interesante. vamos a ver como identificarlo y como explotar esta vulnerabilidad, para ello vamos a utilizar el laboratorio web de acunetix que nos permite ver de una manera mas clara este tipo de Vulnerabilidades, manos a la obra!
Paso a Paso
1 – En este escenario vamos a practicar con la pagina testphp.vulnweb.com que es especificamente diseñada para entender este tipo de vulnerabilidades, en la imagen podemos observar su panel principal.
2 – Ingresamos a el apartado de «Browse Categories» donde podemos observar el siguiente menu de Posters,Paintings,Stickers y Graffity.
3 – Ingresamos a la categoría de «Posters» , aparentemente una interesante galería de imágenes con su correspondiente artista…podemos ver un identificador en el URL lo que puede estar haciendo una consulta a «algo».
4 – Nuestros instintos de Hacker se despiertan y comprobamos poniendo un simple » ‘ » a el final de la sentencia para poder detectar rápidamente que el sitio es vulnerable a SQL Injection!, en este caso podemos ver que nos indica la pagina tiene un error en la sintaxis.
5 – Empezamos con un simple Union para poder inyectarle nuestra propia sentencia, nuestro objetivo es lograr encontrar la cantidad de columnas que tiene la sentencia ya dispuesta en la pagina para poder ejecutar la nuestra.
6 – Lo logramos, encontramos que las columnas contenidas en la sentencia equivalen a 11.
7 – Utilizamos «@@version» con este comando podemos ver la versión del motor de base de datos alojado en esta web.
8 – Ahora utilizamos «user()» para identificar el usuario con el cual se ejecutara la consulta, en este caso podemos ver que nos retorna acurat@localhost.
9 – Ahora nos ponemos serios y recopilamos información interesante, buscamos el nombre de las tablas , encontramos algo interesante.
10 – Encontramos Oro! columna uname y pass esto quiere decir que podremos tener un posible acceso a el portal.
11 – Utilizamos un concat para poder ver claramente los valores de las columnas encontradas anteriormente desde la tabla users.
Espero les sirva la información y en caso de tener inconvenientes con algunos de estos pasos no dudes en preguntarlo.
Saludos!
0x00Sector!