Columnas

Introducción al hardening de sistemas operativos

Primera parte

 

Todos, en por lo menos alguna ocasión, hemos escuchado o leído en foros sobre si equis sistema operativo es mejor que otro, si es más seguro, etcétera.

Si bien es cierto que algunos sistemas operativos salen de fabrica (por así decirlo) con más opciones de seguridad que otros, ninguno se ve libre de tener algún problema.

 

Quizá alguien de nuestros lectores habrá tenido la experiencia de un sistema propietario recién instalado y que estuviera conectado a la red que presentara la famosa ventana de “el sistema se reiniciará en un minuto”. Es necesario aclarar que los sistemas libres no se ven libres de este tipo de situaciones.

 

La labor de un buen administrador será llevar a cabo una serie de pasos previos a poner en producción el servidor.

 

Estos pasos son los que se conocen como hardening del sistema o endurecimiento, que no son más que una serie de configuraciones, en algunas ocasiones recomendadas por el fabricante y en otras por las buenas prácticas que nos permiten “reducir” el riesgo de que nuestro sistema se vea comprometido (una vez más recalcamos que la seguridad al 100% no existe).

 

Pues bien, la labor de endurecimiento comienza desde el momento de la instalación del equipo, en la que “no” deberemos de seleccionar la opción de instalar “todo”, sino sólo aquello que necesitemos para la finalidad que tendrá el equipo. Por ejemplo, hablando de un servidor Linux que dará servicio de correo electrónico y página Web a una PyME y que estará desatendido; es decir, que estará en el site, entonces no es necesario (ni recomendable) que le instalemos el ambiente gráfico, juegos, etcétera. Lo mismo aplica para sistemas propietarios.

 

Una realidad es que en ocasiones aunque seleccionemos la opción personalizada al momento de la instalación, habrá ciertos servicios que se instalen por default; para esto, una vez que termine la instalación tendremos que realizar una revisión minuciosa de los servicios que se encuentran en ejecución en el equipo: cuáles aún estando detenidos están instalados e ir depurando (deteniendo y/o desinstalando) para no tener servicios innecesarios.

 

Volviendo al ejemplo anterior, si mi servidor sólo dará los servicios mencionados, no es necesario tener instalado y ejecutándose el servicio de FTP.

 

Otra recomendación es actualizar las versiones tanto del sistema operativo como de las aplicaciones que ejecutemos. Existen vulnerabilidades para ciertas versiones de aplicaciones. En nuestro ejemplo será necesario actualizar la versión del servidor Web y de correo electrónico (esto a nivel aplicación), con la finalidad de que un posible atacante explotara alguna vulnerabilidad en la versión que tengamos al momento de la instalación.

 

Lo mismo deberemos hacer para el sistema operativo, ya que en ocasiones los ataques pueden venir por explotación de vulnerabilidades, por ejemplo del kernel.

 

Es importante recalcar que en ambientes críticos es recomendable tener un periodo de evaluación de la actualización antes de ponerla en un equipo de producción; esto con la finalidad de que la actualización, parche o como se designe se encuentre estable (cuántas noticias se han dado de que un parche liberado hoy genera más problemas que aquellos que pretendía subsanar).

 

Si en nuestra organización contamos o no con un firewall perimetral es recomendable instalar un firewall de host (la doble protección nunca está de más). Con ello,  y optando por una política restrictiva en la que todo lo que no está permitido está negado, iremos “abriendo” los puertos “sólo” a las aplicaciones autorizadas (puerto 80 para el servidor de Web y 25 para el de correo). De esta manera estamos acotando aún más los posibles puntos de falla.

 

Un punto muy importante en el que poca atención se pone es en aplicar políticas de usuario/contraseñas. Esto para evitar situaciones como tener los denominados passwordsjoes” en los que la contraseña es la misma que el nombre de usuario, así como definir caducidad, características de robustez (emplear altas, bajas, números, símbolos especiales y demás), histórico (para evitar poner la misma contraseña), etcétera.

 

En otros artículos abordaremos con mayor profundidad el tema de hardening enfocado a ciertos sistemas operativos. Hasta la próxima.

Publicaciones relacionadas

Botón volver arriba
Share via
Copy link
Powered by Social Snap