Pontificia Universidad Católica Del Ecuador
Total Page:16
File Type:pdf, Size:1020Kb
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR FACULTAD DE INGENIERÍA MAESTRÍA EN REDES DE COMUNICACIÓN PERFIL DEL TRABAJO PREVIO LA OBTENCIÓN DEL TÍTULO DE: MÁGISTER EN REDES DE COMUNICACIÓN TEMA: ESTUDIO DE LAS CARACTERÍSTICAS DE SEGURIDAD DE SERVIDORES WEB EN ENTORNOS DE SOFTWARE LIBRE APLICABLES A LA PROTECCIÓN DE SITIOS DINÁMICOS ERNESTO PÉREZ ESTÉVEZ Quito – 2014 Agradecimientos A Linus Torvalds, por haberme ayudado a encontrar un sentido a mi profesión. A Paul Bernal por aclarar miles de dudas y tener paciencia A la mamisa y a los mapases! A mis padres A todos los que me han apoyado, y también a la que no. Tabla de contenidos Capítulo 1 :Introducción......................................................................................................................1 1.1 Antecedentes.............................................................................................................................2 1.2 Justificación..............................................................................................................................3 1.3 Objetivo General.......................................................................................................................5 1.4 Objetivos Específicos...............................................................................................................5 1.5 Alcance......................................................................................................................................6 Capítulo 2 :Marco teórico....................................................................................................................7 2.1 Sitios estáticos y dinámicos......................................................................................................7 2.2 Ataques a sitios dinámicos........................................................................................................9 2.3 Tipos de ataques a sitios dinámicos........................................................................................14 2.4 Descripción de los riesgos presentados..................................................................................14 2.4.1 Fallas de Inyección..........................................................................................................14 2.4.2 Fallas en el manejo de sesión y autenticación.................................................................15 2.4.3 Cross-Site Scripting........................................................................................................16 2.4.4 Referencias inseguras directas a objetos.........................................................................17 2.4.5 Fallas en la configuración...............................................................................................18 2.4.6 Exposición de datos sensitivos........................................................................................18 2.4.7 Falta de control de acceso a funciones............................................................................19 2.4.8 Cross-site Request Forgery.............................................................................................19 2.4.9 Uso de componentes con fallas conocidas......................................................................20 2.4.10 Redirecciones no validadas...........................................................................................20 2.5 Otras técnicas utilizadas..........................................................................................................20 2.5.1 Ejecución de archivos maliciosos...................................................................................21 2.5.2 Filtrado de información y manejo impropio de errores..................................................21 2.6 Análisis de la información obtenida........................................................................................21 2.7 Aprovechamiento de las vulnerabilidades..............................................................................23 2.7.1 Falencias durante la operación por parte del usuario......................................................23 2.7.2 Fallas en el navegador.....................................................................................................23 2.7.3 Falencias en la educación del usuario para el uso de las herramientas...........................23 2.7.4 Falencias en la administración del servidor....................................................................24 2.7.5 Inadecuado manejo de credenciales de acceso al servidor..............................................24 2.7.6 Inadecuado manejo de credenciales de acceso a sistemas de apoyo...............................24 2.7.7 Uso de aplicaciones configuradas por defecto................................................................25 2.7.8 Servidor desactualizado..................................................................................................25 2.8 Falencias en el servidor web...................................................................................................25 2.8.1 Fallas en la programación del servidor o sus componentes............................................25 2.8.2 Configuración inapropiada..............................................................................................26 2.8.3 Fallas de desempeño.......................................................................................................26 2.9 Falencias en la programación de la aplicación.......................................................................26 2.9.1 Código no seguro o no auditado.....................................................................................26 2.9.2 Utilización de código desactualizado..............................................................................26 2.10 Efectos de los ataques a aplicaciones dinámicas..................................................................27 2.10.1 Negación de servicio.....................................................................................................27 2.10.2 Desfiguración................................................................................................................27 2.10.3 Accesos no autorizados.................................................................................................27 2.10.4 Robo de información.....................................................................................................28 Capítulo 3 :Estado del arte de la reacción ante ataques a servidores web.........................................29 3.1 Protecciones a nivel de usuario...............................................................................................29 3.1.1 Navegadores con características de seguridad................................................................29 3.1.2 Plugins de seguridad en navegadores..............................................................................30 3.1.3 Sistemas de detección de amenazas................................................................................30 3.2 Protecciones en la programación............................................................................................31 3.3 Protecciones en el Sistema Operativo.....................................................................................31 3.3.1 Tiempo de soporte...........................................................................................................32 3.3.2 Instalaciones mínimas.....................................................................................................32 3.4 Adecuado particionamiento del disco.....................................................................................33 3.4.2 Eliminando servicios innecesarios..................................................................................36 3.4.3 Actualizaciones...............................................................................................................36 3.4.4 Fortalecimiento al núcleo del sistema.............................................................................38 3.4.5 Aseguramiento de SSH...................................................................................................38 3.4.6 Uso de claves fuertes o sistemas de autenticación no tradicionales................................40 3.5 Protecciones en el servidor web..............................................................................................41 3.5.1 Manejo de Banners..........................................................................................................41 3.5.2 Eliminación de características innecesarias....................................................................42 3.5.3 Restricción de acceso a directorios basados en usuario/clave........................................42 3.5.4 Protecciones contra ataques de negación de servicio......................................................43 3.5.5 Bloqueos ante actividad inusual......................................................................................43 3.5.6 Bloqueos por tipo de navegador......................................................................................43 3.5.7 Sistemas de detección de vulnerabilidades.....................................................................44 3.5.8 Uso de sistemas de monitoreo de cambios......................................................................45 3.5.9 Uso de sistemas de alerta................................................................................................46