You are on page 1of 32

Seguridad en las aplicaciones

Web y BD

Curso: Seguridad Informtica


Martin Valdivia B.
CISA, CISM, ISMS-LA
Agenda Amenazas Web

Aplicaciones Web

Vulnerabilidades: Sql Injection

Vulnerabilidades: Cross-Site Scripting

Vulnerabilidades: Capa 8
Tipos de Aplicaciones Web
Web Site pblico.
Informacin destinada al pblico.

Intranet (ERP/CRM/Productividad)
Informacin privada de acceso interno.

Extranet (Productividad/B2B/B2C)
Informacin privada de acceso externo.
Fuente: Seguridad en Aplicaciones Web Chema Alonso
Arquitectura Multicapa

DCOM
BBDD
WebServer

Browser WebService

WebServer
BBDD

RPC

Interfaz de Usuario Lgica de la Aplicacin Datos


Fuente: Seguridad en Aplicaciones Web Chema Alonso
Amenazas
Zone-h.org contabiliza 2.500 intrusiones Web con
xito cada da en 2004.
En 2010 1.5 millones de websites fueron
desfiguradas (defaced).
Se atacan todas las tecnologas
Los ataques se han escalado desde el sistema
operativo a la aplicacin.
Ataques no masivos.
Motivos:
Econmicos
Venganza
Reto
Just For Fun
Fuente: Seguridad en Aplicaciones Web Chema Alonso
Cliente - Riesgos
Navegador de Internet:
Ejecuta cdigo en contexto de usuario.
Lenguajes potentes:
HTML/DHTML
vbScript/JavaScript/Jscript
Programas embebidos
Applets Java
ActiveX
Shockwave Flash
Cdigos No protegidos
Ofuscacin de cdigo.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Cdigo y poder
El cdigo fuente es poder
Tanto para defenderse como para atacar
Compartir el cdigo es compartir el poder.
Con los atacantes y defensores
Publicar el cdigo fuente sin hacer nada ms
degrada la seguridad
Por el contrario, publicar el cdigo fuente permite
a los defensores y a otros elevar la seguridad al
nivel que les convenga.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Software Seguro
El software Fiable es aquel que hace lo que se supone
que debe hacer.
El software Seguro es aquel que hace lo que se supone
que debe hacer, y nada mas.
Son los sorprendentes algo mas los que producen inseguridad.
Para estar seguro, se debe de ejecutar solo software
perfecto
O, hacer algo para mitigar ese algo mas

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Cliente - Riesgos
Ninguna proteccin en cliente es buena
Utilizacin de tcnicas de Man In The
Middle
Achilles
BurpSuite
Odysseus
Decompiladores
Flash
Java
Fuente: Seguridad en Aplicaciones Web Chema Alonso
Lgica de Aplicacin - Riesgos
Servidor Web
Ejecuta cdigo en contextos privilegiados.
Lenguajes potentes
Acceden a BBDD
Envan programas a clientes
Transferir archivos
Ejecutar comandos sobre el sistema.
Soporte para herramientas de administracin de otro
software.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Explotacin del Ataque
Aplicaciones con mala comprobacin de datos de entrada.
Datos de usuario.
Formularios
Text
Password
Textarea
List
multilist
Datos de llamadas a procedimientos.
Links
Funciones Scripts
Actions

Datos de usuario utilizados en consultas a base de datos.

Mala construccin de consultas a bases de datos.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Riesgos
Permiten al atacante:
Saltar restricciones de acceso.
Elevacin de privilegios.
Extraccin de informacin de la Base de Datos
Bajar servicios de la Base de Datos
Ejecucin de comandos en contexto usuario bd
dentro del servidor.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Tipos de Ataques
Ejemplo 1:
Autenticacin de usuario contra base de
datos.
Usuario

Clave ****************

Select idusuario from tabla_usuarios


Where nombre_usuario=$usuario
And clave=$clave;

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Tipos de Ataques
Ejemplo 1 (cont)
Usuario Administrador

Clave or 1=1

Select idusuario from tabla_usuarios


Where nombre_usuario=Administrador
And clave= or 1=1;

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Tipos de Ataques
Ejemplo 2:
Acceso a informacin con procedimientos de
listado.

http://www.miweb.com/prog.asp?parametro1=hola

http://www.miweb.com/prog.asp?parametro1=1

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Tipos de Ataques
Ejemplo 2 (cont):

http://www.miweb.com/prog.asp?parametro1= union select nombre,


clave,1,1,1 from tabla_usuarios; otra instruccin; xp_cmdshell(del
c:\boot.ini); shutdown --

http://www.miweb.com/prog.asp?parametro1=-1 union select .....; otra


instruccin; --

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Controles
No confiar en medidas de proteccin en cliente.

Comprobacin de datos de entrada.

Construccin segura de sentencias SQL.

Fortificacin de Servidor Web.


Cdigos de error.
Restriccin de verbos, longitudes, etc..
Filtrado de contenido HTTP en Firewall.

Fortificacin de SGBD.
Restriccin de privilegios de motor/usuario de acceso desde web.
Aislamiento de bases de datos.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Controles
Los controles de aplicacin son controles sobre las
funciones de entrada (input), procesamiento y salida
(output) de datos. Incluyen mtodos para asegurar:

Que slo datos completos, correctos y vlidos son


ingresados y actualizados en un sistema aplicativo
Que el procesamiento realice la tarea correcta
Que los resultados del procesamiento satisfagan las
expectativas
Que se mantengan apropiadamente los datos

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Explotacin del Ataque
Datos almacenados en servidor desde cliente.

Datos van a ser visualizados por otros


cliente/usuario.

Datos no filtrados. No comprobacin de que sean


dainos al cliente que visualiza.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Riesgos
Ejecucin de cdigo en contexto de usuario
que visualiza datos.

Navegacin dirigida
Phising
Spyware
Robo de credenciales
Ejecucin de acciones automticas
Defacement
Fuente: Seguridad en Aplicaciones Web Chema Alonso
Tipos de Ataques
Mensajes en Foros.
Firma de libro de visitas.
Contactos a travs de web.
Correo Web.

En todos ellos se envan cdigos Script


dainos.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Robo de Sesiones (XSS)
Mediante esta tcnica se puede robar sesiones de
una manera bastante sencilla
Bastara con realizar un script que llamase a una
pgina alojada en nuestro servidor pasndole la
cookie
Este Script se colara en el servidor de la victima
aprovechando un punto vulnerable a XSS
Cuando un usuario este logueado en el servidor y
ejecute el script se enviara a nuestro servidor el
contenido de la cookie

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Robo de Sesiones (XSS)
Una vez que la pgina obtiene la cookie
(almacenandola por ejemplo en un archivo)
mediante programas como Odysseus se
puede hacer una llamada al servidor
pasndole la cookie original
Por supuesto esta cookie es vlida para
robar la sesin solo mientras el usuario no
cierre la sesin

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Contramedidas
Fortificacin de aplicacin
Comprobacin fiable de datos

Fortificacin de Clientes
Ejecucin de clientes en entorno menos
privilegiado.
Fortificacin de navegador cliente.
MSBA.
Polticas.

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Explotacin de Ataque
Falta de conocimiento SD3
Diseo
Configuracines
Implantacin

Administradores/Desarrolladores no formados en
Seguridad
Hacking tico

Falta de conocimiento del riesgo

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Riesgos
Insospechados:

Bases de datos pblicas


No proteccin de datos
No proteccin de sistemas
.....

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Tipos de Ataques
Hacking Google

Administradores predecibles
http://www.misitio.com/administracion
http://www.misitio.com/privado
http://www.misitio.com/gestion
http://www.misitio.com/basedatos

Ficheros log pblicos


WS_ftp.log

Estadsticas pblicas
Webalyzer

Fuente: Seguridad en Aplicaciones Web Chema Alonso


Contramedidas
Formacin

Ficheros Robots
Robots.txt

LOPD y LSSI
www.lssi.es

Escribir cdigo seguro

Fuente: Seguridad en Aplicaciones Web Chema Alonso

You might also like