Asegurando la virtualización de tus sistemas de control
La virtualización es un tema que ya se introdujimos en los artículos Mi SCADA en las nubes y evolución de los dispositivos en los sistemas de control, aunque no hacíamos referencia a los problemas de seguridad asociados, las técnicas existentes de virtualización, o el grado de implantación de esta tecnología en los sistemas de control.
Antes de abordar el tema es necesario distinguir entre virtualización y computación en la nube. La primera trata de abstraerse del hardware mediante el uso de software, mientras que la segunda separa las aplicaciones de la plataforma donde se ejecutan.
Virtualización clásica
La virtualización tal y como se entiende habitualmente supone el despliegue de múltiples máquinas software completas dentro de un mismo hardware. Dependiendo de cómo se hace el despliegue existen dos tipos de virtualización, hipervisores de tipo 1 o instalado directamente como sistema operativo, e hipervisores de tipo 2 o instalados sobre un sistema operativo comercial; como se comentaron en Mi SCADA en las nubes.
-Esquema de arquitectura de virtualización clásica-
La virtualización completa de las máquinas permite que unas sean independientes de las otras, de manera que se pueden gestionar como si fuesen máquinas hardware separadas, pero favoreciendo la ampliación de recursos en caso de ser necesario.
Virtualización mediante contenedores
El último avance de la virtualización es la utilización de contenedores. Con esta tecnología no se virtualiza el sistema entero, sino que, partiendo de una imagen de base, se registran los cambios realizados tanto por instalaciones como por desinstalaciones, de aplicaciones y servicios. De esta manera los ficheros de las imágenes de las máquinas son mucho menores y las necesidades de espacio se reducen considerablemente.
-Comparación entre virtualización tradicional y con contenedores
Los contenedores están aislados unos de otros, pero comparten un mismo sistema operativo, librerías y binarios. Esto hace que el despliegue sea mucho más rápido que una instalación nueva, así como los reinicios y las migraciones, pero tiene el problema de que una vulnerabilidad en una máquina anfitrión puede afectar también al resto, al compartir la base del sistema operativo.
Estado de la virtualización en los SCI
La virtualización dentro de SCI está condicionada por varios aspectos que limitan su implantación. Estas son:
- La virtualización no permite la separación física de las diferentes zonas de seguridad que deben existir en un sistema de control, distinguiendo al menos las zonas de producción, DMZ y de supervisión.
- La normativa, que en muchas ocasiones no contempló la virtualización como una posibilidad. Algunos de sus controles son incompatibles con ella, como pueden ser controles relacionados con el control del perímetro electrónico de seguridad y la protección de los activos críticos.
- La escasa certificación del software en entornos virtualizados por parte de los desarrolladores, o un sistema de licenciamiento no compatible con la virtualización.
El acceso de la virtualización a los sistemas de control comenzará por los procesos de menor criticidad donde la pérdida momentánea de comunicaciones no suponga un problema, hasta que evolucione suficiente para ser adaptada a entornos de automatización de campo de tiempo real.
En cuanto al uso de contenedores, no son habituales despliegues de esta tecnología en la industria, pero en algunos casos, como se refleja en este artículo, o para entornos de desarrollo pueden ser una opción viable.
Ventajas y desventajas frente a sistemas reales
La principal motivación para virtualizar un sistema SCADA es reducir hardware e infraestructura, y con ello los gastos; pero también existen otras razones.
La virtualización de los sistemas de control permite integrarlos en el entorno corporativo y con ello estrechar los lazos entre diferentes departamentos y compartir responsabilidades y toma de decisiones, mejorando la colaboración y la integración de medidas de seguridad.
-Ventajas y desventajas de la virtualización -
Otra ventaja que aporta la virtualización es la posibilidad de mejorar el rendimiento y respuesta de determinados procesos puntales, balanceando la carga. Cuando estos procesos requieren de más recursos el HMC (Hardware Managment Console) se los otorgará, pero cuando finalice su uso, se destinaran esas capacidades a otros procesos o máquinas virtualizadas en el mismo servidor. Además, si varios servidores de virtualización se encuentran conectados, el HMC es capaz de traspasar una imagen virtual a otro servidor que esté consumiendo menos recursos.
Como la virtualización se utiliza para agrupar máquinas en un mismo hardware, que son posteriormente accedidas de forma remota, esta característica permite mejorar el trabajo del personal que debe acceder a información con diferentes niveles de seguridad, utilizando diferentes máquinas virtuales correctamente segmentadas en lugar de diferentes equipos separados por air-gap.
Seguridad y virtualización
A pesar de las limitaciones, los beneficios potenciales de eficiencia, seguridad y confiabilidad son mejoras suficientes para justificar el desarrollo progresivo y la introducción de tecnologías de virtualización. Por ejemplo, los hipervisores en tiempo real pueden proporcionar segmentación y aislamiento seguros, permitiendo la creación de entornos de ejecución gestionados para cargas de trabajo en tiempo real, con una evaluación continua del comportamiento de la partición, ofreciendo también capacidades de respaldo y recuperación para sistemas potencialmente comprometidos. La virtualización tolerante a fallos, configuración en alta disponibilidad, permite disponer de dos servidores ejecutándose al mismo tiempo. Un servidor ejecuta la aplicación, como si se tratase de un único servidor en funcionamiento, el otro ejecuta una imagen en la sombra de la instancia del servidor activo, esto significa que este segundo servidor dispone de una copia exacta del servidor en activo. Cuando se produce cualquier tipo de problema de disponibilidad en el servidor principal, el servidor en la sombra entra en funcionamiento, recibiendo todas las comunicaciones con los controladores de campo y los HMI de las salas de control.
El uso de tecnologías SDN (Software Defined Networking) puede proporcionar los medios para supervisar el comportamiento de la infraestructura de comunicaciones, al tiempo que facilita la implementación de contramedidas y el despliegue de mecanismos de seguridad. A medida que el sistema de control se distribuye cada vez más, un NFV (Network Function Virtualization) puede proporcionar los medios para distribuir eficazmente componentes de seguridad través de la infraestructura de comunicaciones del sistema de control, con el fin de acoplarse mejor con la naturaleza distribuida y dispersa de los sistemas protegidos.
Aunque la virtualización se va extendiendo, la gran mayoría de empresas que la han desplegado o están en proceso no contempla ninguna acción relacionada con la seguridad de sus infraestructuras de virtualización, solo en los propios equipos virtualizados.
La superficie de ataque de un entorno virtualizado se amplía a otros componentes que no son críticos en los sistemas reales. Así, las tarjetas gráficas y las de red pueden ver todo el comportamiento de todas las máquinas virtuales, pudiendo suponer una brecha de seguridad para ellas. Las soluciones a estos problemas deben desarrollarse a nivel del propio chip. También es importante el malware al que puede verse afectado el sistema hipervisor, aunque de momento son poco susceptibles a ataques.
Ha de tenerse en cuenta que si se virtualizan sistemas de producción críticos, la redundancia y la disponibilidad pueden verse inhibidas si existe una única vulnerabilidad en el hipervisor que pueda explotarse de forma remota.
Hoy en día la virtualización es una solución adecuada desde el punto de vista de la seguridad tanto para entornos corporativos como para entornos industriales. La mejora en las características de tiempo real y disponibilidad serán el punto de inflexión para su entrada de forma definitiva en los sistemas de control.