Medidas preventivas
Las medidas preventivas son las que se toman para evitar que los ataques lleguen a tener éxito (apartado "prevención" del proceso general de la seguridad, lección 1.3). Estas medidas se pueden agrupar en 4 barreras básicas:
- La seguridad física. Responsable de impedir el acceso físico a los sistemas.
- La autenticación de usuarios. Una vez se tiene acceso al sistema (físico o remoto), es la responsable de identificar a los usuarios y de aceptarlos o rechazarlos.
- El control de acceso a los recursos. Una vez el usuario ha sido autenticado, los procesos que lance estarán convenientemente etiquetados con su identidad. El control de acceso es el mecanismo que permite establecer qué puede hacer cada usuario con cada recurso del sistema.
- El control de acceso a/desde otros sistemas. Responsable de ofrecer de forma selectiva servicios a usuarios que acceden desde otros sistemas, así como de permitir el acceso controlado a otros sistemas.
Estas 4 barreras se describen con más detalle en los apartados siguientes. No obstante, en lo referente a la seguridad preventiva conviene tener en cuenta tres ideas o principios generalmente aplicables: reducir la superficie de ataque, tener cuidado con "el eslabón más débil" y aplicar el principio de menor privilegio.
Reducir la superficie de ataque
Una estrategia básica consiste en reducir al máximo las posibles vías de entrada al sistema. Esto supone limitar al máximo el acceso a los sistemas, siempre teniendo en cuenta que no existe la seguridad absoluta y que, por tanto, el objetivo debe ser mantener un compromiso entre la seguridad y la utilidad del sistema.
Por ejemplo, un portátil u ordenador personal en muchos casos no necesita ofrecer ningún servicio a otros ordenadores. Si se mantienen desactivados servicios como el acceso remoto, la compartición de ficheros, etc., indudablemente el sistema estará más seguro, ya que los posibles atacantes necesitarán buscar otras vías de acceso, como el acceso físico. No obstante, hay que tener en cuenta que cuando se utilizan servicios también se está expuesto. Por ejemplo, un sitio web malicioso (o que haya sido comprometido) podría explotar una vulnerabilidad del navegador del ordenador personal e instalar un programa malicioso que permita el control remoto del ordenador. Incluso si el ordenador estuviera completamente aislado de otros sistemas, sería posible comprometerlo a través de un medio de almacenamiento extraíble, como una memoria USB.
A nivel práctico y relacionándola con las 4 barreras, esta estrategia supone:
- Limitar el acceso físico al sistema.
- Restringir los usuarios autorizados.
- Restringir el acceso a los recursos.
- Restringir servicios ofrecidos y utilizados.
Tener cuidado con el eslabón más débil
En seguridad informática se utiliza mucho el símil de una cadena para hablar de la seguridad de los sistemas. Igual que una cadena es tan fuerte como el más débil de sus eslabones (da igual qué eslabón ha sido, la cadena está igualmente rota), los sistemas son tan seguros como el más inseguro de sus componentes. Este símil es útil, ya que pone de manifiesto la dificultad de conseguir un elevado nivel de seguridad. Efectivamente, el atacante solamente necesita encontrar un punto débil, mientras que el responsable de seguridad debe proteger todas las posibles vías de ataque.
Otra forma de ilustrar esta idea es la frase que dice que "de nada sirve levantar muros en el desierto" (porque la gente no lo escalará, sino que lo rodeará). Esta idea incide en la inutilidad de centrarse demasiado en un componente y hacerlo extremadamente seguro (el muro en el desierto), mientras existen otros componentes mucho más débiles.
Aplicar el principio del menor privilegio
El principio del menor privilegio consiste en ejecutar cada acción con el menor nivel de privilegio posible. De esta forma, en caso de que algo funcione de forma diferente a la esperada (por error, accidente o intencionadamente), los efectos negativos estarán más acotados y será más fácil detectar y corregir el problema. A nivel práctico, este principio se puede aplicar de mútiples formas, y se volverá a él frecuentemente a lo largo del módulo. Un ejemplo sería la ejecución de un servidor web:
- Sería preferible ejecutarlo usando un usuario no privilegiado a ejecutarlo como administrador del sistema.
- Sería preferible ejecutarlo en una máquina dedicada a ejecutarlo en una máquina con otros servicios.
- Sería preferible separar el servidor web en varios servidores cuando se manejan datos de diferente sensibilidad, de forma que cada uno solamente pueda acceder a los datos realmente necesarios.
- Sería preferible alojar la máquina que contiene al servidor en una red separada de la red corporativa.
- ...
Francisco Javier Cervigon Ruckauer
No hay comentarios:
Publicar un comentario