El presente articulo, pretende ser una modesta guÃ#a de ayuda a la hora de diseñar sistemas de seguridad para servidores web
La seguridad de un servidor web debe estar diseñada en capas, cada capa super pone a la anterior, todo esquema de seguridad debe incluir al menos 4 tipos de medidas de seguridad:
- Preventivas
- Reactivas
- Detección
- Recuperación
Medidas Preventivas: Su objetivo es prevenir o dificultar la intrusión ejemplo: Firewalls
Medidas Reactivas: Reaccionan ante la amaneza tomando contra medidas ejemplo: Firewall de aplicaciones, Mod_security, Sistemas de detección de ataques de fuerza bruta, etc.
Medidas de Detección: Ayudan a detectar si una intrusión a ocurrido o está en proceso ejemplo , HIDS como Tripwire, chkrootkit
Medidas de Recuperación: Ayudan a recuperar la operabilidad luego de una intrusión ejemplo: backups e imagenes de disco.
Al implementar un esquema de seguridad se debe planear en lineas defensivas, cada linea refuerza la anterior, de modo que el fallo o la vulnerabilidad de una linea no comprometa la instalación, piense como el enemigo, monitoree sus logs e investigue cualquier indicio sospechoso.
Un ejemplo tÃ#pico de un esquema defensivo seria algo como:
1ra Linea
Componente: Sofware
Objetivo: Mantener nuestro software al dÃ#a y con sus respectivos parches de seguridad aplicados
2da LÃ#nea
Componente: Firewall
Objetivo: Reglamentar el tráfico de entrada/salida
Ejemplos: APF, Firewalls de hardware, etc.
Un firewall clásico evita que accesos a determinados servicios de nuestro servidor pero no protegerá los servicios que obligatoriamente debemos dejar abiertos en un servidor web como son: http, mail, ssh, etc
3ra Linea
Componente: Sistema de detección de ataques de fuerza bruta.
Objetivo: Proteger nuestros puntos de entrada al servidor, ssh, ftp, etc. que un firewall clásico no protegerÃ#a.
Ejemplos: BFD
Los hackers saben muy bien que muchos usuarios son descuidados con sus passwords, tambien saben que muchisima gente usa su mismo login como password, además existen numerosas herramientas que facilian el ataque a servicios como ftp y ssh, estos ataques tratan de ingresas miles de combinaciones de usuarios y passwords para tratar de dar con alguna que funcione.
4ta Linea
Componente: Firewall de aplicación.
Objetivo: Proteger nuestras aplicaciones web de uso malicioso
Ejemplo: mod_security
Muchas aplicaciones web son inseguras, una no adecuada validación de variables y formularios puede ser la puerta de entrada para hacker, los firewalls de aplicaciones protegen nuestras aplicaciones de uso malicioso
5ta Linea
Componente: HIDS activos
Objetivo: Examinar los paquetes entrantes en busca de ataques conocidos
Ejemplo: SNORT
estos sistemas verifican el tráfico entrante y lo comparan con patrones de ataque conocidos y en base a eso pueden tomar acciones.
6ta linea
Componente:HIDS pásivos
Objetivo: Detectar intrusiones recientes o en proceso
Ejemplo: Tripwire
La idea básica detrás de estos sistemas es saber con exactitud si una intrusión ha ocurrido y saber que partes del sistema fueron modificados, de esta manera podemos planear la recuperación y parcheo del sistema
7ma linea
BACKUP !!! Despues de una intrusión esto es lo único que le quedará asegurese de que realizar periódicamente copias de respaldo y mensualmente haga pruebas de restauración.
Consejos generales de seguridad:
- Sea paranoico, desconfie de todo.
- Proteja su computadora personal tanto como su servidor, de nada vale proteger su server si un hacker puede robarle su contraseña facilmente de su computadora.
- Revise los logs diariamente
- Investigue cualquier anormalia.
- Mantengase informado acerca de la últimas amenazas de seguridad.
- Parta de la premisa de que NO existe un servidor impenetrable solo dificil de comprometer.
- Seguridad no es instalar paquetes de seguridad en su servidor, es una filosofÃ#a de trabajo.