SQL injection vs Database: Using SQLmap

A día de hoy, uno de los “ataques” que – más se usa – (o uno de los que más) contra aplicaciones web son los llamados “SQL Injection” (SQLi)estos ataques tienen como objetivo acceder a la base de datos del sitio web, para obtener – información sensible – sobre ella, como por ejemplo los datos para administrar el sitio web, contraseñas de los usuarios, correos electrónicos, DNI, dirección e incluso números de tarjetas de crédito con los códigos de verificación, etc.


SQL Injection - BLOG - 2

Seguro que mas de alguno, en más de una ocasión (en teoría) os habéis encontrado sin querer (o queriendo) algún – “mensaje de alerta  como este en algún sitio web, y sin darle demasiada importancia habéis continuado con lo que estabais haciendo. Veamos dos capturas a modo de ejemplos:

SQL Injection - BLOG - 4

SQL Injection - BLOG - 3

SQL Injection - BLOG - 5

SQL Injection - BLOG - 6

Si observamos esto, podríamos decir que tenemos – altas posibilidades  de obtener datos sensibles sobre el sitio web… }:O

Esta vulnerabilidad ocurre por un error” en la validación de las variables.

Para realizar ataques “SQL Injection” de forma automatizada, se suele usar – SQLmap  , y lo puedes descargar pinchando en la imagen, es una herramienta libre (open source).. 😉

Captura: SQLmap.
Captura: SQLmap.

En futuros artículosexplicaremos mas detenidamente como buscar “webs” con fallos – SQLi  y publicaremos algunos “Dorks” para que podáis encontrarlas dependiendo lo que queráis obtener, pero.. vamos al grano.


SQL Injection - BLOG - 8


Una vez localizada la web con el fallo (vulnerabilidad) “SQLi” debemos de saber como se llama la base de datos que está manejando la web, lo hacemos de la siguiente manera (recordad, estamos usando SQLmap). En color rojo escribimos la “URL“, ocultamos dicha dirección por cuestiones de seguridad (obviamente).. }:P

Captura: Proceso para obtener el nombre de la "base de datos" con SQLmap.
Captura: Proceso para obtener el nombre de la “base de datos” con SQLmap.

Tras este sencillote paso, “obtenemos el nombre de la BBDD“. Veamos otra captura de ello:

SQL Injection - BLOG - 10

Como ya sabemos el nombre de la “Base de Datos“, continuamos con nuestro ataque, el siguiente paso es sacar todas las tablas de la base de datos que nos interesa, evidentemente la primera es la mas importante, procedemos como en el anterior paso y ademas le añadimos el nombre de la “BBDD” que obtuvimos. Veamos otro par de ejemplos al respecto:

SQL Injection - BLOG - 11

SQL Injection - BLOG - 12

Parece que hemos encontrado algo muy interesante.. }:), seguimos con el ataque, ahora vamos a por las columnas de la tabla webmaster. Veamos otra captura como ejemplo:

SQL Injection - BLOG - 13

Nos muestra como resultado 5 columnas, de las cuales las mas importantes son usuario y contraseña. Otra captura más:

SQL Injection - BLOG - 15

Y para terminar, el ultimo ataque para llegar hasta los datos, al final indicamos a “SQLmap” que saque los datos con –dump. Veamos otras dos capturas:

SQL Injection - BLOG - 16

SQL Injection - BLOG - 17

Ya tenemos los datos de administración del sitio, una vez comprobada y verificada la vulnerabilidad, nos ponemos en contacto con el admin del sitio en cuestión para que corrija el fallo (sería la opción más lógica).


SQL Injection - BLOG - 18

– La información mostrada aquí es de uso didáctico e informativo

Salu2


TonyHAT - 170

Anuncios

Un comentario en “SQL injection vs Database: Using SQLmap”

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s