Presentacion practica seguridad bd

Post on 13-Jul-2015

173 views 2 download

Transcript of Presentacion practica seguridad bd

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

Seguridad en Base de Datos.

Por:

Jaider Contreras Puentes.

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

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.

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:

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.

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:

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.

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.

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 :

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.

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

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.

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

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.

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

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.

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.

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.

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.

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 :

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).

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

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.

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

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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