La semana anterior pude leer un articulo interesante publicado por
Bozidar Spirovski, en el que propone una base de proceso para poder
estandarizar la configuración y endurecimiento de sistemas nuevos.
La propuesta realizada me pareció muy acertada, sin embargo luego de
revisarla y pensar en ella varias ocasiones decidí realizar una
contribución pequeña ya adaptar la propuesta a cumplimiento PCI-DSS, ya
que como tal la norma contempla la creación del proceso, en el que se
debe observar el endurecimiento de cualquier sistema perteneciente al
ambiente de tarjetas de crédito.
Un proceso para implementación de nuevos sistemas es importante ya
que permite que estos arranquen seguros en producción, por lo general
las organización que carecen de este proceso cometen el error de llevar
a producción sistemas que no están correctamente parchados que tienen
aplicaciones, usuario o procesos que no son requeridos, los mismos que
se convierten en un riesgo de seguridad muy grande para las
organizaciones.
El proceso
Se propone el mismo con el fin de que en cada sistema nuevo,
se pueda seguir una serie de pasos importantes y críticos que permita
reducir el riesgo de compromiso, aligeren el proceso de administración
de los mismos a futuro y permitan a la organización el cumplimiento de
la norma en forma continua.
Se debe recordar que para el cumplimiento con la norma, el proceso
deberá estar respaldado con los procedimientos adecuados y se deberá
generar la documentación necesaria sin la que el sistema no sera
aprobado por un QSA (Estándares de configuración, plantilla de
revisión, entregables, etc.)
Endurecimiento
El proceso de endurecimiento se usa para asegurar un sistema reduciendo
su potencial de ser vulnerado. Por la naturaleza de operación, los
sistemas, mientras más funciones cumplen aumenta su potencial de
compromiso y su numero de vulnerabilidades.
Lo que explica que la norma PCI-DSS solicite claramente que los
sistemas solo cumplan una función (máximo dos si esto es justificado) y
que en el mismo se reduzca los posibles vectores de ataque al remover
todas las funciones (Aplicativos, programas, etc.), servicios
(Demonios, puertos, etc.) y usuarios (Administradores, super usuarios,
regulares, etc) no no sean específicamente requeridos por la función.
El endurecimiento de los sistemas por lo general es especifico para
cada plataforma y para esto se puede contar con plantillas y
documentación generada por los proveedores o fabricantes de los
sistemas.
Sin embargo, el endurecimiento de los mismos en su base es un
proceso genérico y puede instituirse y debe implementarse para los que
requieren realizar el cumplimiento de distintas normas de seguridad.
Por esto como proceso se recomienda los siguientes pasos luego de
instalar el sistema operativo base (considerando que no se ha instalada
nada luego del sistema).
Instalación Inicial del sistema:
En el servidor 0 Km, realice la instalación del sistema operativo a
utilizar, recuerde que desde el inicio deberá considerara el cambio de
contraseñas y configuraciones de fabrica (Requerido por la norma),
cualquier cambio debe documentarlo en una bitácora.
Remover el software innecesario:
Luego de terminar con la instalación del sistema operativo, el primer
paso es remover cualquier software que se haya instalado en el sistema
(como parte de un paquete predeterminado) y que no sea requerido para
la función única del mismo.
Ej. En un Servidor de archivos no va a requerir un servicio Web o el un
controlador de dominio un programas de oficina (Word, Excel, Acrobar
Reader), como norma general si no lo requiere no debe existir.
Remover o deshabilitar los usuarios innecesarios:
Los sistemas operativos por lo general configuran usuarios de distintos
tipos, si estos no son requeridos elimínelos, si no puede eliminarlos
inactivos (ej. usuario "invitado") y como adicional seria recomendable
renombrar usuarios como el Administrador. Recuerde siempre cambiar las
contraseñas establecidas en la configuración predeterminada
Remover o deshabilitar los servicios innecesarios:
De la misma forma, remueva todo servicio innecesario del sistema si
este no es explícitamente requerido por la función del servidor. Si no
es posible removerlos, deshabilitelos, pero recuerde que siempre
permanece latente el riesgo de que sean activados por error o como
parte de un ataque.
Aplicar todos los parches innecesarios al sistema operativo:
Realizados los pasos anteriores, es momento de aplicar todos los
parches de seguridad y de sistema que ha publicado el fabricante.
Adicionalmente en este momento es cuando se pueden aplicar los procesos
de endurecimiento recomendados por los fabricantes del sistema, los
mismos que contemplaran varias tareas adicionales a las ya mencionadas.
Instalar aplicaciones requeridas:
Una ves que el sistema base ya esta instalado y endurecido, es el
momento de instalar los aplicativos y funciones de terceros en el
sistema. En este caso se deben considerar los pasos anteriores en como
un subproceso de endurecimiento, removiendo todos las funcionalidades
no requeridas por la aplicación, cambiando las configuraciones y
contraseñas de fabrica y aplicando recomendaciones de endurecimiento
del fabricante (Ej. Instalación de Oracle)
Aplicar los parches a las aplicaciones:
Realizados estos pasos se deberá aplicar todos los parches de seguridad y de aplicación recomendados por el fabricante.
Ejecutar aplicación de detección de vulnerabilidades:
Este punto es muy importante ya que aun que se haya realizado a
conciencia todos los pasos anteriores, una buena herramienta de
identificación de vulnerabilidades nos ayudara a identificar problemas
aun ocultos, los cuales deberán ser corregidos de forma apropiada y en
los casos en los que no exista solución, se deberá contemplar, la
implementación de controles compensatorios.
Este paso requerirá de documentación adicional y de la calendarización
del proceso de descubrimiento de vulnerabilidades en forma trimestral.
Certificar el sistema para PCI-DSS:
En este punto, se deberán revisar las consideraciones referentes a los
requerimientos de la norma, es apropiado que la organización establezca
una lista de revisión que contemple cada uno de los requerimientos de
la norma que afectan a los sistemas en producción.
Ej.
Contraseñas de no menos de 7 caracteres, funciones adicionales
eliminadas, configuración correcta del sistema de bitácoras,
monitorización de usuarios administradores, instalación de antivirus,
etc.
Entrada en producción:
Por ultimo con el sistema endurecido y certificado para entrar en
producción se deberá entrar en el proceso de paso a producción tomando
en cuenta las consideraciones respectivas que son parte de cualquier
implementación.
Referencias:
A Process Checklist for System Hardening
http://information-security-resources.com/2009/10/20/a-process-checklist-for-system-hardening/
October 20, 2009 por Bozidar Spirovski, CISSP, MCSA, MCP
Fuente: Moplin Infoseg

No hay comentarios.:
Publicar un comentario
Gracias por dejar un comentario en Segu-Info.
Gracias por comentar!