Hardening de sistemas una breve introducción
Hardening en seguridad informática es el proceso de asegurar un sistema mediante la reducción de vulnerabilidades en el mismo, esto se logra eliminando software, servicios, usuarios, etc. Innecesarios en el sistema así como cerrando puertos que tampoco estén en uso además de muchas otros métodos y técnicas que veremos durante este pequeño resumen introductorio al Hardening de sistemas.
Una de las primeras cosas que hay que dejar en claro del Hardening de sistemas operativos es que no necesariamente logrará forjar equipos “invulnerables”. Es importante recordar que, según el modelo de defensa en profundidad, el host es sólo una capa de éste. En otras palabras, un factor más a considerar dentro del gran número de puntos a ser tomados en cuenta para defender “globalmente” un sistema.
Entre las actividades de hardening se pueden contar las siguientes
· Configuraciones necesarias para protegerse de posibles ataques físicos o de hardware de la máquina
. Entre otras actividades, destacan el upgrade de firmware, el establecimiento de contraseñas complejas para el arranque del equipo y la configuración de la BIOS, la deshabilitación de inicio de sistema para cualquier unidad que no sea el disco duro principal, y en casos de servidores, la deshabilitación de dispositivos ópticos, usb o similares, para evitar cualquier entrada de malware desde un medio de almacenamiento externo.
· Instalación segura del sistema operativo.
Esto implica, entre otras cosas, el considerar al menos dos particiones primarias (1 para el sistema operativo en sí y otra para carpetas y archivos de importancia), el uso de un sistema de archivos que tenga prestaciones de seguridad, y el concepto de instalación mínima, es decir, evitando la instalación de cualquier componente de sistema que no sea necesario para el funcionamiento del sistema.
· Activación y/o configuración adecuada de servicios de actualizaciones automáticas
· Instalación segura del sistema operativo.
Esto implica, entre otras cosas, el considerar al menos dos particiones primarias (1 para el sistema operativo en sí y otra para carpetas y archivos de importancia), el uso de un sistema de archivos que tenga prestaciones de seguridad, y el concepto de instalación mínima, es decir, evitando la instalación de cualquier componente de sistema que no sea necesario para el funcionamiento del sistema.
· Activación y/o configuración adecuada de servicios de actualizaciones automáticas
para asegurar que el equipo tendrá todos los parches de seguridad que entrega el proveedor al día. En caso de que se encuentre dentro de una corporación, es adecuado instalar un servidor de actualizaciones, que deberá probar en un entorno de laboratorio el impacto de la instalación de actualizaciones antes de instalarlas en producción.
Instalación, configuración y mantención de programas de seguridad
Instalación, configuración y mantención de programas de seguridad
tales como Antivirus, Antispyware, y un filtro Antispam según las necesidades del sistema.
Configuración de la política local del sistema
Configuración de la política local del sistema
considerando varios puntos relevantes:
Política de contraseñas robusta
Política de contraseñas robusta
con claves caducables, almacenamiento histórico de contraseñas (para no usar contraseñas cíclicas), bloqueos de cuentas por intentos erróneos y requisitos de complejidad de contraseñas.
Renombramiento y posterior deshabilitación de cuentas estándar del sistema
Renombramiento y posterior deshabilitación de cuentas estándar del sistema
como administrador e invitado.
Asignación correcta de derechos de usuario
Asignación correcta de derechos de usuario
de tal manera de reducir las posibilidades de elevación de privilegios, y tratando siempre de limitar al mínimo los privilegios y/o derechos de los usuarios activos.
Configuración de opciones de seguridad generales
Configuración de opciones de seguridad generales
como aquellas relacionadas con rutas de acceso compartido, apagado de sistema, inicio y cierre de sesión y opciones de seguridad de red.
Restricciones de software
Restricciones de software
basado en lo posible en el uso de listas blancas de software permitido más que en listas negras del mismo.
Activación de auditorías de sistema
Activación de auditorías de sistema
claves para tener un registro de algunos intentos de ataque característicos como la adivinación de contraseñas.
Configuración de servicios de sistema.
Configuración de servicios de sistema.
En este punto es necesario tratar siempre de deshabilitar todos aquellos servicios que no vayan a prestar una funcionalidad necesaria para el funcionamiento del sistema. Por ejemplo, si su equipo no posee tarjetas de red inalámbrica, el servicio de redes inalámbricas debería estar deshabilitado.
Configuración de los protocolos de Red.
Configuración de los protocolos de Red.
En la medida de lo posible, es recomendable usar sistemas de traducción de direcciones (NAT) para direccionar los equipos internos de una organización. Deshabilitar todos aquellos protocolos de red innecesarios en el sistema y limitar el uso de los mismos al mínimo. TCP/IP es un protocolo que no nació pensando en seguridad, por lo que limitar su uso al estrictamente necesario es imperativo.
Configuración adecuada de permisos de seguridad en archivos y carpetas del sistema.
Configuración adecuada de permisos de seguridad en archivos y carpetas del sistema.
En la medida de lo posible, denegar explícitamente cualquier permiso de archivo a las cuentas de acceso anónimos o que no tengan contraseña. Un correcto set de permisos a nivel de carpetas y archivos es clave para evitar acceso no deseado al contenido de los mismos.
Configuración de opciones de seguridad de los distintos programas
Configuración de opciones de seguridad de los distintos programas
como clientes de correo electrónico, navegadores de internet y en general de cualquier tipo de programa que tenga interacción con la red.
Configuración de acceso remoto.
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.
Configuración adecuada de cuentas de usuario
Configuración adecuada de cuentas de usuario
tratando 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.
Cifrado de archivos o unidades según las necesidades del sistema
Cifrado de archivos o unidades según las necesidades del sistema
considerando un almacenamiento externo para las llaves de descifrado. Considerar además la opción de trabajar con sistemas de cifrado de mensajería instantánea y correo electrónico.
Realizar y programar un sistema de respaldos frecuente a los archivos y al estado de sistema
Realizar y programar un sistema de respaldos frecuente a los archivos y al estado de sistema
En la medida de lo posible, administrar los respaldos vía red o llevar los respaldos a unidades físicas que estén alejadas del equipo que las origina.
Como se puede ver, el espectro de actividades que deben ser llevadas a cabo dentro de este proceso es bien amplio y tiene actividades de todo tipo. Sin embargo, la consigna para todas estas actividades es siempre la misma: Dejar el sistema operativo lo más restringido posible.
Y aquí es donde nace una pregunta que debería ser más o menos obvia. ¿Hasta qué punto el hardening es una ayuda y no una molestia? En este punto, es importante considerar un paradigma muy interesante que tiene la seguridad. Al parecer, la seguridad por un lado, y la versatilidad y facilidad de uso de los sistemas por otro, son como dos grupos de personas tirando de ambos extremos de una cuerda. En pocas palabras, a medida que se busca una seguridad mayor en los sistemas, la versatilidad y facilidad de uso del mismo se ven limitados, puesto que la cantidad de decisiones que puede tomar el usuario se reduce y la cantidad de posibilidades ajenas al propósito inicial del sistema en sí disminuye drásticamente. Por otro lado, el aumentar la versatilidad y la facilidad de uso de los sistemas pareciera estar muy relacionado con el aumento en las decisiones y posibilidades del usuario, lo que por consiguiente aumenta la probabilidad del mismo de equivocarse y poner en peligro lresuelto.
a seguridad de todo el sistema. Y el debate sobre el punto exacto de equilibrio en cuanto a la cantidad de decisiones que deben pasar por manos del usuario final es bastante extenso y no está del todo Por lo tanto, la respuesta a la pregunta planteada es la siguiente: El Hardening es una ayuda hasta el momento exacto en que entorpece el objetivo inicial que tiene el sistema. Por citar un ejemplo, si un sistema trabaja con impresoras, redes inalámbricas y además con correo electrónico, no es recomendable deshabilitar la cola de impresión, el servicio de redes inalámbricas ni bloquear los puertos de smtp y pop. En otras palabras, en cada acción de Hardening que se vaya a ejecutar en el sistema operativo, hay que tener especial cuidado en que dichas acciones no afecten el propósito del sistema en sí.
Como conclusión, el Hardening es una ayuda indispensable para ahorrarse bastantes dolores de cabeza por parte de los administradores de sistemas. 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 y en algunos casos identificar el origen de los mismos. Es un trabajo que no es trivial, pero que bien vale la pena hacerlo.
No hay comentarios.