Defense in Depth
Defense in Depth es un concepto originado en la estrategia militar, que consiste en la implementación de barreras que impidan el progreso de los intrusos de alcanzar sus objetivos, al mismo tiempo que monitorean su progreso y se desarrollan e implementan respuestas al incidente.
En la ciberseguridad, Defense in Depth se correlaciona con medidas de detección y protección diseñadas para impedir el progreso de un atacante, mientras permite a una organización detectar y responder a la intrusión con el objetivo de reducir y mitigar las consecuencias y posibles daños.
Según el CIS (Center of Internet Security), mediante este enfoque se pretende implementar una serie de mecanismos y controles tecnológicos de forma selectiva para proteger la confidencialidad, integridad y disponibilidad de la red y los datos que esta contiene. Si bien ninguna tecnología o control individual puede contener todas las amenazas y ataques, en conjunto brindan mitigaciones frente a una amplia variedad de estas, así como incorporan diversidad y redundancia en caso de que algún mecanismo o control particular fallara.
Defense in Depth se puede implementar de diferentes maneras, entre ellas:
Aros concéntricos
Se usa de manera que las capas están anidadas una dentro de otra, de manera que se debe pasar por todas las capas para tener éxito en un ataque. Cada capa retrasa al atacante y brinda oportunidades para detectarlo. Las capas no tienen un estándar por lo que se puede implementar según las necesidades de la empresa. Lo que si se debe de hacer es tener los activos en el centro del primer aro, pues es lo que el resto de los aros deben proteger.
Redundancia superpuesta
En esta implementación, los controles se usan en conjunto, de manera que dos o más controles trabajan en paralelo para proteger los activos. Esta estrategia brinda múltiples puntos de detección y generalmente se utiliza cuando un grupo de controles es diferente entre sí, es decir, cuando cada control es diferente.
Segregación o compartimentación
Esta forma de Defense in Depth compartimenta el acceso a un activo, de manera que se requiere de dos o más controles, procesos o individuos para acceder y/o usar dicho activo. Esta estrategia es la más efectiva cuando se trata de proteger un activo de alto valor o incluso crítico, o en ambientes donde la confianza es un problema.
Existen diferentes tipos de controles que se pueden implementar en esta estrategia:
Ø Disuasorios: Este tipo de controles se implementa para desmotivar al atacante a continuar con su ataque.
Ø Preventivos: Controles que tienen la función de evitar que un incidente ocurra, ya sea un ataque o tras uno.
Ø Correctivos: Estos controles arreglan los sistemas afectados en un incidente, una vez que ya haya terminado.
Ø De recuperación: Controles que levantan el ambiente para reanudar el funcionamiento y las operaciones regulares de la empresa.
Ø De detección: Estos controles ayudan a identificar acciones extrañas que podrían o no ser malintencionadas, pero que podrían ser causa de un incidente.
Ø De compensación: Controles que brindan una medida adicional de control, por ejemplo, cuando algún otro no funciona o no se cuenta con él.
Recomendaciones para implementar Defense in Depth
Descubrimiento y gestión de activos
El primer paso es identificar los dispositivos y activos que deben ser protegidos y monitorearlos. No es posible proteger un activo si no sabemos que este existe, por ello es indispensable tener visibilidad de todos los activos que pertenecen a la organización y que tienen acceso a los recursos de esta.
- Realizar copias de seguridad periódicas y garantizar su funcionamiento
- Identificar los sistemas existentes, así como lo que está instalado y en ejecución en los mismos.
- Realizar un inventario del Hardware y Software de los equipos y actualizarlo periódicamente
- Implementar sistemas de autenticación para garantizar que solo los dispositivos y usuarios autorizados tengan acceso a los recursos de la red.
- Desinstalar software y deshabilitar servicios innecesarios para reducir la superficie de ataque.
Parches y actualizaciones de software
- Mantener el Sistema Operativo y las aplicaciones actualizadas para evitar la explotación de vulnerabilidades conocidas.
- Monitorear el estado de la instalación de parches y actualizaciones de cada host.
- Priorizar las actualizaciones o parches de seguridad sobre actualizaciones de características.
- Programar días y horas específicas para instalar las mismas
- Testear las actualizaciones de software en ambientes de prueba.
Asegurar protocolos y servicios
- Deshabilitar servicios que no se utilizan o que no sean necesarios para reducir la superficie de ataque
- Prestar atención a servicios y puertos que permitan la administración de los sistemas en la red (RDP, SSH, VNC, webmin, portales web, concentradores VPN, routers y gateways).
- Cambiar los puertos por defecto de los servicios que permiten la administración de los sistemas para evitar ataques automatizados (RDP, SSH, FTP, MS-SQL, MySQL)
- Implementar soluciones de autenticación centralizadas y soluciones de 2FA/MFA.
Cuentas de usuarios y contraseñas
- Deshabilitar las cuentas default como “Administrator/Administrator” o “admin/root”.
- Monitorear los controles de acceso y el comportamiento de los usuarios con permisos administrativos.
- Utilizar contraseñas robustas y complejas.
- Configurar la vida máxima y expiración de las contraseñas.
- Bloquear las cuentas de los usuarios luego de cierta cantidad de inicios de sesión fallidos
- Agregar métodos de autenticación adicionales (MFA) siempre que sea posible.
- Almacenar las contraseñas de forma segura mediante gestores de contraseñas, y no guardar las mismas en navegadores web o documentos sin cifrar.
- No reutilizar las mismas contraseñas para varios servicios.
- No compartir las contraseñas y los accesos con ninguna otra persona.
Implementación y configuración de soluciones antimalware
- Mantener las soluciones de seguridad actualizadas, tanto la detección por firmas, como las versiones del software y de sus componentes.
- Configurar las soluciones de tal manera que monitoreen el sistema de archivos, el registro, la memoria, y los protocolos y servicios de red.
- Habilitar la protección opcional frente a otros tipos de software que no son malware.
- Configurar la protección de la configuración de los productos de seguridad con una contraseña para evitar que alguien malintencionado con credenciales administrativas desinstale o realice modificaciones no deseadas en las mismas.
Auditoría y registros de eventos
Los registros de auditoría proveen información de los eventos y las modificaciones realizadas en los sistemas. Por lo general, capturan eventos que permiten registrar dónde se realizó una actividad, quién la realizó, qué actividad realizó y cómo respondió el sistema.
- Habilitar e instalar actualizaciones de software que permitan mayor auditoría sobre las ejecuciones de comandos en el sistema.
- Habilitar configuraciones de auditoría de seguridad básica en los sistemas por medio una política.
- Considerar la implementación de sistemas de correlación de eventos (SIEM). Para organizaciones más maduras es conveniente evaluar la implementación de sistemas de orquestación de seguridad, administración y respuesta (SOAR).
- Considerar la adopción de soluciones DLP, las cuales permitan tener un mayor control del flujo de los datos de las organizaciones, pudiendo categorizar la información sensible.
Seguridad ofensiva
Para poder defenderse mejor es necesario aprender como los adversarios atacan. Si bien la seguridad ofensiva no está estrictamente relacionada a la defensa en profundidad, esta resulta indispensable para probar la solidez de esta estrategia. En ese sentido, el mundo de la seguridad ofensiva ofrece un abanico de posibilidades que son aplicables a organizaciones con distintos niveles de madurez en torno a la seguridad.
Fuentes:
Defensa en profundidad: cómo implementar esta estrategia de ciberseguridad: