Hardening como seguridad
En este artículo veremos las medidas para llevar a cabo un refuerzo de hardening en el uso informático organizacional y personal como buenas prácticas de seguridad.
Table of Contents
Toggle¿Qué es el Hardening?
El Hardening (endurecimiento) en seguridad informática, hace referencia al proceso de asegurar un sistema mediante la reducción de vulnerabilidades en el mismo, esto se logra eliminando software, cerrando puertos que no estén en uso, aplicaciones, usuarios, entre otros.. como métodos de seguridad. Recordemos que debemos encontrar un equilibrio entre la funcionalidad y la seguridad de los equipos y sistemas, como así también, la permanente capacitación del personal en materia de seguridad.
Veamos esto con algunos ejemplos:
Funcionalidad sobre seguridad
Como ejemplo de funcionalidad sobre seguridad, podemos mencionar la aplicación “WhatsApp”. Esta aplicación de mensajería es muy sencilla de utilizar, es intuitiva y no tiene publicidad, lo que todo usuario desea. Sin embargo, durante un tiempo esta app tuvo problemas de seguridad ya que sus mensajes se enviaban en texto plano. Esta vulnerabilidad se conoce como “Man in the midle” (Hombre en el medio) por lo que cualquier atacante que estuviese en el medio de una comunicación podía leer los mensajes. Lo que llevó a la empresa a modificar y actualizar sus sistemas de seguridad.
Seguridad sobre funcionalidad
Ahora veamos como ejemplo, la seguridad sobre la funcionalidad, podemos nombrar los sistemas de “Homebanking” ya que estos trabajan de forma exclusiva con el dinero de las personas, cuentas, transacciones, depósitos, etc… han superpuesto la seguridad a través de los mecanismos anteriormente mencionados, como 2FA, contraseñas robustas y el cambio de las mismas cada cierto tiempo, es decir, si se ingresa mal más de tres veces las credenciales se bloquea el usuario y se lo solicita ir a un ATM para desbloquear, lo que requiere contar con la tarjeta y el PIN para ingresar a la terminal para sacar un nuevo usuario y clave.
Conceptos a tener en cuenta
Si vamos a realizar cambios en la configuración de uno o más equipos, siempre tenemos que tener presente probar estos cambios primero en un ambiente de pruebas para verificar cómo responde el dispositivo o el software en cuestión.
Nunca debemos aplicar cambios directamente en el ambiente de producción porque podríamos afectar el funcionamiento y esto traería consigo más problemas y pérdida de tiempo. Por lo tanto, si vamos a realizar cambios de configuración de seguridad, estos deberían pasar de forma inicial por una prueba. Si no se presentan conflictos, podemos estar seguros de implementarlos en producción.
Actividades a realizar
A continuación se detallarán las actividades llevadas a cabo dentro del hardening como mecanismos de seguridad.
Auditar los sistemas existentes
Realizar una auditoría integral de los sistemas con pruebas de acceso, escaneo de vulnerabilidades, administración de configuraciones y otras herramientas de auditoría de seguridad para encontrar fallos en el sistema y priorizar las correcciones.
Fortalecimiento del sistema operativo
Actualizar el sistema operativo, paquetes de servicio y parches automáticamente. Eliminar los controladores, el uso compartido de archivos, las bibliotecas, el software, los servicios y la funcionalidad innecesarios. Cifrar el almacenamiento local. Reforzar los permisos de registro y otros sistemas, registrar toda la actividad, errores y advertencias e implementar controles de usuario privilegiado.
Configuración adecuada de cuentas de usuario
Se trata de trabajar la mayor parte del tiempo con cuentas de acceso limitado y deshabilitando las cuentas de administrador. Es absolutamente recomendable usar la impersonificación de usuarios para realizar labores administrativas en vez de iniciar sesión como administradores.
Parchear las vulnerabilidades de inmediato
Tener implementado un sistema de parches e identificación de vulnerabilidades automatizado y completo.
Fortalecimiento de la red
El firewall debe estar configurado correctamente y todas las reglas se deben auditar periódicamente. Bloquear los puertos de red abiertos que no se utilicen o no sean necesarios, (como así también la visibilidad de aquellos que sí se utilicen), deshabilitar y eliminar protocolos y servicios innecesarios, implementar listas de acceso y cifrar el tráfico de la red. Puede ver un ejemplo de tipos y usos en nuestro artículo sobre introducción al Firewall.
Fortalecimiento del servidor
Reforzar los servidores antes de conectarlos a Internet o redes externas, evitar instalar software innecesario en un servidor y gestionar correctamente los derechos de acceso y de superusuario.
Configuración de acceso remoto
En caso de no ser estrictamente necesario, es bueno deshabilitar el acceso remoto. Sin embargo, cuando es necesario tener control remoto de la máquina, es preciso configurarlo de manera adecuada, restringiendo el acceso a un número muy limitado de usuario, restringiendo al mínimo las conexiones concurrentes, tomando cuidado en la desconexión y cierre de sesión y estableciendo un canal cifrado de comunicaciones para tales propósitos, como SSH.
Refuerzos de las aplicaciones
Eliminar cualquier componente o función que no necesite. El refuerzo de las aplicaciones también debería implicar la inspección de integraciones con otras aplicaciones y sistemas, y la eliminación o reducción de componentes y privilegios de integración innecesarios.
Fortalecimiento de la baase de datos
Crear restricciones de administrador, por ejemplo, controlando el acceso con privilegios a ciertos usuarios, evitar el uso de ciertas sentencias dinámicas o funciones que sean vulnerables a inyección SQL, etc.
Programar un sistema de respaldos frecuente
En la medida de lo posible, debemos administrar los respaldos o backups, de los archivos y estado del sitema vía red o llevarlos a unidades físicas que estén alejadas del equipo que las origina.
Conclusión
Como vemos, son varias las actividades que se llevan a cabo. Todas estas siempre deben realizarse mediante un punto que busque una buena experiencia de usuario, y a su vez, la protección del mismo y de los sistemas que utilice. Quizá, en algunos casos, de sobreponga la seguridad por sobre la funcionalidad teniendo en cuenta el nivel de Probabilidad-Riesgo que exista. Ejemplos de algunos programas y organizaciones, podemos mencionar:
- CIS (Center of Internet Security) es un organismo que desarrolla buenas prácticas de seguridad, controles y herramientas con respecto al Hardening, para que cualquiera las pueda utilizar.
- CCN CERT es un organismo español, el cual también desarrolla buenas prácticas y técnicas para que el usuario las utilice.
Recordar
El Hardening como seguridad en sistemas informáticos, es una ayuda indispensable para ahorrarse bastantes dolores de cabeza. Entre sus ventajas, se puede contar la disminución por incidentes de seguridad, mejoras en el rendimiento al disminuir niveles de carga inútil en el sistema, una administración más simple y mayor rapidez en la identificación de problemas, (ya que muchas de las posibles causas de ellos quedarán descartadas en virtud de las medidas tomadas) y finalmente la posibilidad, en muchos casos, de poder hacer un seguimiento de los incidentes e identificar el origen de los mismos.