Comunicación presentada al IV Congreso Smart Grids:
Autores
- Adam Gauci, Cybersecurity Program Manager, Schneider Electric / Energy Business
- Sandeep Pathania, Cybersecurity Offer Manager, Schneider Electric / Energy Business
- Mathieu Salles, Energy CERT Leader, Schneider Electric / Energy Business
- Jose Manuel Ruiz, Cybersecurity Expert, Schneider Electric / Energy Business
Resumen
El mundo se ha vuelto totalmente dependiente de un suministro estable de electricidad. Las redes eléctricas forman parte de las infraestructuras críticas de un país al igual que lo son los principales hospitales, aeropuertos, etc. Es por esto que, las interrupciones de suministro eléctrico sean inaceptables a menudo conlleven sanciones de los gobiernos a los operadores de la red. La frontera entre lo que se ha llamado OT (Operational Technology) e IT (Informational Technology) es inexistente. Las subestaciones eléctricas del futuro, digitalizadas, requerirán de una mayor interoperabilidad entre múltiples vendedores, no sólo los clásicos vendedores de OT y vendrán con conceptos nuevos como virtualización de sensores, machine learning y otros conceptos anteriormente sólo escuchados en otras industrias. La ciberseguridad está en la agenda de todos los gobiernos y de cualquier industria, también en la de los operadores de la red eléctrica. Para un operador de la red eléctrica, perder el servicio de un nodo de su red puede afectar a los clientes conectados a ese nodo, o si fuese una infraestructura crítica para su operación, podría afectar a millones de clientes. Sin embargo, el impacto potencial de un incidente de ciberseguridad donde se tome control de la red que intercomunica las diferentes subestaciones y el centro de control puede tener consecuencias devastadoras.
Palabras clave
Ciberseguridad, SCADA, DMS, SmartGrids, IEC-62443
Introducción
En Europa, el número de subestaciones eléctricas excede los 4 millones (Pavla Mandatova. (2013) Eurelectric) y estas, a ojos de un atacante, son 4 millones de entradas posibles a la red eléctrica. En las nuevas redes inteligentes, se conectarán nodos sin ninguna medida de ciberseguridad con subestaciones digitalizadas, sistemas de información geográfica, etc. El nivel de seguridad de la nueva red inteligente estará comprometido por el eslabón más débil de la cadena y por este motivo, los operadores se verán obligados a reemplazar por completo esos nodos obsoletos a nivel de ciberseguridad o bien, realizar un proceso de actualización de los mismos.
Es conocido el ataque sufrido en Ucrania, donde unos atacantes se infiltraron en la red de varios operadores, aprendieron a utilizar los sistemas de control a operar los sistemas de control y cuando decidieron atacar dejaron a unos 225.000 clientes de 3 operadores distintos sin electricidad durante varias horas en la víspera de Navidad.
En septiembre de 2017, la empresa de seguridad Kaspersky reportó lo que se ha denominado Dragonfly 2.0 – una serie de intrusiones en utilities de todo el mundo (Dragos Security. [2017]) . Durante los últimos seis años, estos atacantes se han infiltrado en las redes de control eléctrica de varios países, entre ellos EEUU.
Si bien parece difícil parar a estos ataques avanzados, es necesario poner todos los medios posibles para detectar intrusiones y parar las acciones que puedan comprometer las infraestructuras críticas de un país/organización. Para combatir los ataques a las redes eléctricas, existen estándares de seguridad para el intercambio de información e interoperabilidad en las redes eléctricas y para definir el nivel de seguridad de un IED (protección, PLC, RTU) o de un sistema de control eléctrico como puede ser IEC-61850 y IEC-62351. Otros, como el estándar IEC-62443, indican cómo evaluar los riesgos y amenazas de un sistema de control, qué requisitos de seguridad debe cumplir (a nivel de producto o como un todo) para alcanzar un nivel de seguridad avanzado.
Este documento defiende la importancia de incluir medidas para proteger un sistema de control desde la fase de diseño y presenta cómo aplicar el estándar IEC-62443 en un sistema de control eléctrico ya existente para poder ser conectado a una red eléctrica inteligente de manera segura.
Evaluación de riesgos
Previamente estándares de seguridad como el IEC-61508 no incluían una evaluación de vulnerabilidades (ciberseguridad). La versión del estándar 61508-2010 incluye una evaluación de las vulnerabilidades conocidas como parte del análisis de riesgos previo a la fase de diseño de un sistema.
El análisis de riesgos de ciberseguridad o simplemente un análisis de las vulnerabilidades conocidas de un sistema de control todavía es una actividad poco demandad por las utilities en el sector eléctrico.
La evaluación de riesgos de ciberseguridad incorpora metodología del análisis de riesgos de seguridad tradicional, se complementan y proveen seguridad (safety) y ciberseguridad desde las fases tempranas de un sistema.
Seguridad desde el Diseño
Para la gestión de ciberseguridad es mejor definir los requisitos/medidas de ciberseguridad que un sistema debe cumplir en la fase de diseño y mantener el nivel de seguridad del sistema durante el ciclo de vida del proyecto. Esto aplica tanto a sistemas como a componentes del sistema.
Una vez que se ha realizado la estimación de los riesgos de ciberseguridad, hay que determinar las medidas necesarias y suficientes para alcanzar el nivel de seguridad deseado para el producto o sistema analizado. El objetivo es realizar un análisis de riesgos durante la fase de diseño
Se evalúa la seguridad desde el diseño en 4 aspectos:
Plataformas Seguras
Considerar la ciberseguridad desde la fase de diseño de un sistema o producto permite seleccionar el hardware y software más adecuado sobre el que se construirá la solución.
Medidas de seguridad como arranque seguro de un sistema, certificados de autenticación, etc., se basan en plataformas seguras (por ejemplo, un módulo TPM) y en algoritmos avanzados de criptografía. Definir los requisitos de seguridad desde la fase de diseño permitirá identificar los componentes necesarios para alcanzar el nivel de seguridad deseado y evaluar la plataforma para evitar problemas de capacidad de cómputo o memoria.
Aplicaciones Seguras
Al realizar un análisis de riesgos e identificar y las posibles amenazas en una fase anterior al diseño y codificación de una aplicación, se desarrollará pensando en contramedidas posibles para esas amenazas, mejorará los eventos, logs y evidencias que faciliten la investigación de un ataque y en definitiva será más robusta.
Productos Seguros
Un producto seguro se basa en plataformas y aplicaciones seguras. Se debe realizar un proceso de bastionado, minimizando los permisos con los que corren las aplicaciones, configurando los servicios siguiendo las buenas prácticas de los fabricantes, minimizando los servicios instalados y los puertos accesibles desde interfaces seguras y no seguras. Existen muchas soluciones para realizar un bastionado de sistemas, por ejemplo, Bastille para sistemas Linux, las plantillas elaboradas por el Center for Internet Security, etc.
Arquitecturas Seguras
Por último, también se debe considerar la definición de arquitecturas seguras durante la fase de diseño. IEC-62443 indica la creación de diferentes zonas de seguridad, las cuales serán analizadas independientemente para ver el nivel de seguridad que deben alcanzar dependiendo de su criticidad, el número de amenazas presentes y la probabilidad de que ocurran.
Una vez hecha esta segregación por zonas, identificamos el tráfico entre zonas y podemos implementar medidas de seguridad acordes, como por ejemplo la inclusión de DMZ para el intercambio de datos con la red corporativa o otros sistemas, VPNs para acceso remoto, firewalls, IDS (sistemas de detección de intrusiones), IPS (sistemas de prevención de intrusiones), encriptación, etc.
La seguridad de un sistema se debe basar en procesos maduros para asegurar que las medidas definidas se consideran en cada etapa de la vida de un sistema. El estándar IEC-62443 define 4 niveles de seguridad y describe qué requisitos funcionales debe cumplir un producto o un sistema para alcanzar el nivel deseado.
Aplicar medidas de Ciberseguridad a un Sistema de Control Existente
A continuación, se lleva a la práctica el proceso para incrementar el nivel de seguridad de un SCADA, un DMS o una subestación eléctrica. Para ello se va a seguir el estándar IEC-62443 parte 3-2 Security Risk Assessment and System Design y parte 3-3 System security requirements and security levels.
Para asegurar que se está listo para empezar la actualización del sistema y limitar el tiempo en el que el sistema estaría sin operar debido a estas actividades de actualización, se han marcado en azul los trabajos que se deben realizar “in situ” y en naranaja aquellos trabajos que se pueden llevar en oficina o sin influenciar en la operación del sistema.
Obtener un inventariado del sistema
El primer paso para defender un sistema es conocer qué se va a defender, algo básico, pero a veces olvidado. Tanto el dueño del activo como el responsable del proyecto de actualización del sistema debe realizar este ejercicio de colección de información in situ. Durante este proceso un experto de ciberseguridad realizará tareas no intrusivas sobre el sistema para obtener información de todos los componentes del sistema, como tipo de dispositivo (IHM, Protección, RTU, Switch, etc., fabricante, versión del firmware/sistema operativo que está ejecutando, lista de programas, puertos, servicios, conexiones con otros sistemas, etc. Además, se llevarán a cabo entrevistas con el personal responsable para:
- Recolectar arquitectura de red del sistema y otros posibles subsistemas existentes
- Inventarios existentes (activos, configuraciones)
- Políticas de Seguridad o Normativas aplicables
Evaluación de Vulnerabilidades del Sistema
Este proceso se podrá hacer in situ o en back-office usando la información recogida en el punto A. Dependiendo de la criticidad del sistema se optará por una manera o la otra.
Si se hace in situ, se podrán usar herramientas como NMAP, NESSUS, OpenVAS para evaluar las vulnerabilidades a nivel de sistema, o auditar la configuración del sistema. Otras más específicas como NIKTO, SQLMap, DirBuster, Hydra, Metasploit, etc pertenecerían a evaluaciones más cercanas a Ethical Hacking, pero también podrían ser útiles para evaluar las vulnerabilidades del sistema.
Listado de Amenazas, Nivel de Seguridad y Análisis de Riesgos
El sistema se puede clasificar según su criticidad para la operadora eléctrica, el gobierno, etc y definir el nivel de seguridad requerido o deseado para este sistema. Para este proceso la operadora eléctrica se puede apoyar en la definición de los niveles de seguridad hecha por IEC-62443 o por otras organizaciones como la americana NIST.
A continuación se pasa a listar y clasificar todas las amenazas existentes para el sistema, la probabilidad de que cada amenaza ocurra en las diferentes zonas, o activos del sistema en estudio y el impacto de las mismas. Impacto no sólo económico sino también en el entorno y en las personas. Imaginemos por ejemplo el impacto de un apagón generalizado en un hospital o en una planta de tratamiento de aguas.
Con esto se pueden identificar los riesgos, ordenar por criticidad y analizar aquellos que se está dispuesto a asumir.
Definir medidas de Seguridad a Implementar
Una vez realizado el análisis de riesgos y definido el nivel de seguridad que se quiere alcanzar, el estándar IEC-62443 en su parte 3-3 define los requisitos funcionales que un sistema de control industrial o eléctrico debe implementar para alcanzar nivel de seguridad 1, 2 o 3.
Se identificarán los requisitos funcionales que son posibles implementar por criticidad o por facilidad de implementación en el sistema existente y mejora de la postura de seguridad general del sistema.
Pruebas en el Laboratorio
Una buena medida para minimizar el tiempo de interrupción del servicio y asegurar la buena aplicación de medidas a implementar es crear una plataforma espejo.
Implementar las medidas de seguridad
En esta fase, una vez se ha hecho una copia del sistema para asegurarnos que podemos volver a un estado anterior en caso de que sea necesario, se proceden a implementar las medidas diseñadas.
Ejecución de Pruebas
Antes de poner en ejecución el sistema, se deben probar:
- Las nuevas funcionalidades
- La desaparición de vulnerabilidades/riesgos identificados en las fases iniciales
- La correcta operación del sistema
Copia del sistema actualizado y Comienzo de una nueva iteración en el proceso
Por último, se procedería a realizar una copia del sistema ya actualizado, se creará una nueva línea base con el inventariado actualizado y se procederá a comenzar una nueva iteración para atacar nuevos riesgos que hayan podido aparecer o los ya identificados.
Conclusión
Los sistemas de control han dejado de ser sistemas aislados, poco conocidos por atacantes. Han pasado a ser infraestructuras críticas para el buen funcionamiento de cualquier sociedad, gobierno o industria.
Implementar medidas de seguridad siempre será más eficiente en términos de tiempo y coste si se tiene en cuenta desde una fase de diseño del sistema o producto. Los fabricantes están haciendo un esfuerzo para mejorar la seguridad de sus sensores y de los sistemas que integran, pero los operadores deben exigir la implementación de elementos de seguridad en los sistemas que operan basándose en marcos y estándares específicos para sistemas de control industrial y eléctrico.
Los sistemas existentes carecen de medidas de seguridad suficientes, si estos sistemas necesitan ser integrados con otros elementos de las nuevas redes eléctricas, deben pasar por un proceso de actualización y alcanzar un nivel de seguridad suficiente para evitar ser controlados por un atacante y/o ser usados para realizar un ataque a toda la infraestructura de red.