Presentacion practica seguridad bd

41
Ataque por inyección de código SQL y Sniffing. Seguridad en Base de Datos. Por: Jaider Contreras Puentes.

Transcript of Presentacion practica seguridad bd

Page 1: Presentacion practica seguridad bd

Ataque por inyección de código SQL y Sniffing.

Seguridad en Base de Datos.

Por:

Jaider Contreras Puentes.

Page 2: Presentacion practica seguridad bd

Temas.

Ataque por inyección de código SQL a BadStore

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

Ataque por Sniffing

Page 3: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – ¿Qué

es BadStore?

BadStore es un Live CD con Trinux , de 10MB. Apenaspide recursos(64MB de RAM), que permite arrancarlodesde una máquina virtual. BadStore arranca un servidorWeb con el sitio Web de BadStore, que simula una tiendavirtual vulnerable, a la que le podremos hacer todo tipode pruebas. Una vez "explotada", podremos reiniciar ytenerla para continuar.

Page 4: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Instalación BadStore en

VirtualBox

Lo primero que realizamos es la instalación de VirtualBox, y luego la instalación de la maquina virtual BadStore, tal como vemos el resultado en la siguiente imagen:

Page 5: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Ejecución de BadStore en

VirtualBox

Luego iniciamos BadStore y así poder subir los servicios del servidor web y tener acceso a la aplicaciponweb que ésta maquina contiene.

Page 6: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Búsqueda de IP de la

aplicación de badstore en consola de linux

Estando dentro del bash, escribimos el comando ifconfig y obtenemos la IP respectiva que nos dará acceso a la tienda on-line, lo cual podemos ver en la siguiente imagen:

Page 7: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Apertura de aplicación web de badstore en el navegador.

Teniendo la IP accedemos con la misma a través de nuestro navegador al sitio web que ésta nos muestra, tal como lo evidencia la imagen anterior. En este caso se está haciendo la respectiva practica con el SO kali-Linux.

Page 8: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Instalación en linux de

python y sqlmap.Para realizar el ataque a labase de datos Badstore,necesitaremos contar con unprograma denominadosqlmap, el cual corre bajopython, por ende lo primeroque debemos hacer esinstalar python para Kali-linux y seguidamente lainstalación de sqlmap , paraello abrimos una terminal decomandos y hacemos larespectivas instalaciones conlos comandos apt-get installpython y luego apt-getinstall sqlmap.

Page 9: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer servidor web y motor de base de

datos.

Una vez teniendo sqlmapinstalado en nuestradistribución kali-linux,procedemos a usar elprograma para realizarconsulta de información delservidor web y el motor debase de datos que usa laaplicación de badstore, conel comando y su ejecuciónque se refleja en lasiguiente imagen :

Page 10: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer servidor web y motor de base de

datos.

El resultado delcomando dado es elque muestra laanterior imagen ydonde notamos quebadstore usa comoservidor web Apache1.3.28 y como motorde base de datos aMySQL 4.1.7.

Page 11: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

bases de datos en badstore

En la siguiente imagenpodemos observar laejecución del comando parahallar las bases de datosexistentes dentro deBadstore

Page 12: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

bases de datos en badstore

El resultado del comandoes la visualización enpantalla de la base dedatos denominadabadstoredb, tal como lomuestra la imagenanterior.

Page 13: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer actual base de datos en badstore

En la siguiente imagenpodemos observar laejecución del comando parahallar la actual base dedatos que soporta laaplicación web de Badstore

Page 14: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

bases de datos en badstore

El resultado del comandoes la visualización enpantalla de la base dedatos denominadabadstoredb, tal como lomuestra la imagenanterior.

Page 15: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando parahallar las tablas de la basede datos badstoredb, la cuales la bases de datos quesoporta la aplicación web deBadstore

Page 16: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

tablas de la BD

El resultado del comandoes la visualización enpantalla de las tablas dela base de datosdenominada badstoredb,tal como lo muestra laimagen anterior.

Page 17: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando parahallar las columnas de lastablas de la base de datosque soporta la aplicaciónweb de Badstore.

Page 18: Presentacion practica seguridad bd

Ataque por inyección de código SQL a BadStore – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla itemdbcorrespondiente a la basede datos denominadabadstoredb, tal como lomuestra la imagenanterior.

Page 19: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web –

testphp.vulnweb.com

El sitio web con el cualinteractuaremos pararealizar el ataquecorresponde a un sitioweb desarrollado parahacer este tipo depracticas, ya que cuentacon muchasvulnerabilidades, a la quele podremos hacer todotipo de pruebas.

Page 20: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer servidor web y motor de base de

datos.

Una vez teniendo sqlmapinstalado en nuestradistribución kali-linux,procedemos a usar elprograma para realizarconsulta de información delservidor web y el motor debase de datos que usa laaplicación webtestphp.vulnweb.com, conel comando y su ejecuciónque se refleja en lasiguiente imagen :

Page 21: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web– Comando para conocer servidor web y motor de base de

datos.

El resultado delcomando dado es elque muestra laanterior imagen ydonde notamos que laaplicación webtestphp.vulnweb.comusa como servidor webNginx, usando comointerprete php 5.3.10 ycomo motor de basede datos a MySQL 5.0,bajo SO Linux(Ubuntu).

Page 22: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer actual base de datos en badstore

En la siguiente imagenpodemos observar laejecución del comando parahallar la actual base dedatos que soporta laaplicación webtestphp.vulnweb.com

Page 23: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

bases de datos en badstore

El resultado del comandoes la visualización enpantalla de la base dedatos denominadaacuart, tal como lomuestra la imagenanterior.

Page 24: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando parahallar las tablas de la basede datos acuart, la cual esla bases de datos quesoporta la aplicación webtestphp.vulnweb.com

Page 25: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

tablas de la BD

El resultado del comandoes la visualización enpantalla de las tablas dela base de datosdenominada acuart, talcomo lo muestra laimagen anterior.

Page 26: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando parahallar las columnas de lastablas de la base de datosque soporta la aplicaciónweb testphp.vulnweb.com.

Page 27: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla categ y userscorrespondiente a la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 28: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla carts ypictures correspondientea la base de datosdenominada acuart, talcomo lo muestra laimagen anterior.

Page 29: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla featuredcorrespondiente a la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 30: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla products yartists correspondiente ala base de datosdenominada acuart, talcomo lo muestra laimagen anterior.

Page 31: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de las columnasde la tabla guestbookcorrespondiente a la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 32: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando paraobtener información de lascolumnas de las tablas de labase de datos que soporta laaplicación webtestphp.vulnweb.com, eneste caso se obtendráinformación de la tablausers, columna name.

Page 33: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de la informaciónsolicitada de dichacolumna para la tablaindicada dentro de la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 34: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando paraobtener información de lascolumnas de las tablas de labase de datos que soporta laaplicación webtestphp.vulnweb.com, eneste caso se obtendráinformación de la tablausers, columna pass.

Page 35: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de la informaciónsolicitada de dichacolumna para la tablaindicada dentro de la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 36: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando paraobtener información de lascolumnas de las tablas de labase de datos que soporta laaplicación webtestphp.vulnweb.com, eneste caso se obtendráinformación de la tablausers, columna uname.

Page 37: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del comandoes la visualización enpantalla de la informaciónsolicitada de dichacolumna para la tablaindicada dentro de la basede datos denominadaacuart, tal como lomuestra la imagenanterior.

Page 38: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar laejecución del comando paraobtener información de lascolumnas de las tablas de labase de datos que soporta laaplicación webtestphp.vulnweb.com, eneste caso se obtendráinformación de la tablausers, columna email.

Page 39: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

En la siguiente imagenpodemos observar el uso delos datos consultados parahacer la respectiva deingreso en la web atacada.

Page 40: Presentacion practica seguridad bd

Ataque por inyección de código SQL a Sitio Web – Comando para conocer

columnas de las tablas de la BD

El resultado del ingresocon los datos consultadosen la web se puede notaren la anterior imagen, elcual nos indica que elataque fue satisfactorio,ya que los datosconsultados con sqlmapsirvieron para accedercomo usuario registrado ala aplicación web.

Page 41: Presentacion practica seguridad bd

Fuentes

http://foro.elhacker.net/nivel_web/manualbadstore-t322160.0.html

http://www.blogdemigueldiaz.com/2013/04/sql-injection-curso-de-sqlmap-a-fondo-i/

http://blog.elhacker.net/2014/06/sqlmap-automatizando-ataques-sqli-injection.html

http://www.seguridaddelmal.com/2012/04/que-es-badstore-1_14.html