Hacia una evaluación eficaz de la seguridad en ICS

Publicado el 04/11/2014, por Sandra Salán (INCIBE)
Hacia una evaluación eficaz de la seguridad en ICS

Las organizaciones nacionales y europeas han mostrado su preocupación por la seguridad en los entornos ICS. En el pasado, se diseñaban y ponían en marcha tales dispositivos para trabajar solamente en redes aisladas. Sin embargo, estas redes aisladas se están conectando cada vez más a Internet. Este cambio supone grandes ventajas, pero también aumenta el número de amenazas, incluyendo el ciberterrorismo.

También, hay cada vez más interés en las evaluaciones de seguridad de este tipo de arquitecturas. Por ejemplo, a nivel europeo, ENISA está discutiendo la importancia de temas como «la creación de un banco de pruebas común, o bien un marco de certificación de seguridad del ICS». Poder conseguir este objetivo puede llevar mucho tiempo. Pero, ¿qué podemos hacer mientras tanto?

INCIBE, como centro de ciberseguridad a nivel nacional, está al tanto de la importancia de trabajar en este reto, por lo que plantea el Proyecto SCADA LAB (Laboratorio SCADA y Banco de Pruebas como Servicio para la Protección de Infraestructuras Críticas). La propuesta acumula el esfuerzo de nueve miembros de distintos países de la Unión Europea: Hungría, Italia, Reino Unido y España.

Este proyecto está incluido dentro del programa «Prevención, Preparación y Gestión de las Consecuencias del Terrorismo», un programa específico financiado por la Comisión Europea. Su principal objetivo es analizar las actuales medidas de seguridad aplicadas en entornos ICS a través de:

  1. El desarrollo de un laboratorio y banco de pruebas específico, enfocado en el sector energético.
  2. La reutilización de los recursos existentes, conocimiento y equipamiento, de una manera eficiente.

Otro precedente importante que hay que tener en cuenta es el informe de ENISA «Protección de sistemas de control industrial. Recomendaciones para Europa y Estados Miembros», que describe la situación actual de la seguridad de los ICS y propone siete recomendaciones para mejorarla. En particular, en su recomendación número 5 destaca la falta de iniciativas específicas en estos entornos y la necesidad de realizar evaluaciones independientes de productos de seguridad de estos sistemas. Entre otros, ENISA fomenta el establecimiento de bancos de pruebas. Estos deben ser entornos realistas que permitan llevar a cabo evaluaciones que hagan validaciones y verificaciones independientes.

En resumen, el principal propósito del proyecto SCADA LAB es la creación de un entorno de pruebas que permita la evaluación en remoto del nivel de seguridad de un ICS, o cualquier parte del mismo. Para llevar a cabo este objetivo, la arquitectura del proyecto está dividida en dos áreas principales: el laboratorio y el banco de pruebas.

Áreas principales en SCADA LAB

- Áreas principales en SCADA LAB -

El Área del Laboratorio incluye tanto el hardware como el sotware necesarios para llevar a cabo una evaluación de seguridad del banco de pruebas.

El Área del Banco de Pruebas es el objetivo a evaluar. Idealmente, su implementación es lo más parecida posible a un ICS en producción.

Dentro del ámbito del proyecto, el Área del Banco de Pruebas se encuentra en la sede de Telvent Energy, en Sevilla, y el Área de Laboratorio está ubicado en las instalaciones de INCIBE, León.

Metodología de Evaluación

La primera tarea del proyecto fue llevar a cabo una encuesta entre las partes interesadas (procedentes de Italia, Hungría y España) con el objetivo de evaluar el nivel de concienciación y las necesidades de seguridad actuales. Los encuestados contestaron más de 60 preguntas sobre:

  • El perfil de la organización
  • Concienciación
  • Arquitectura
  • Amenazas existentes
  • Controles de seguridad
  • Necesidades detectadas

Por mencionar algunos de los resultados, tan solo el 36% de los encuestados realiza regularmente pruebas de seguridad en sus ICS y un escaso 10% ha puesto en marcha un entorno permanente de pruebas. Estos resultados indican que la seguridad todavía no está integrada en las compañías. Desafortunadamente, solamente el 30% tiene en marcha una política de ciberseguridad.

La siguiente labor fue el desarrollo de una metodología de evaluación destinada a proporcionar una serie de directrices para facilitar las pruebas de seguridad.

Conceptualmente, esta metodología de pruebas se basó en los siguientes aspectos:

Puntos clave de la metodología.

- Puntos clave de la metodología -

I. Arquitectura Básica del Sistema de Control Industrial

El primer punto a tener en cuenta fue el conjunto mínimo de componentes de un entorno ICS. La arquitectura básica consta de tres niveles principales:

  1. Nivel de Campo y Control. Este nivel contiene RTUs, PLCs, IEDs, sensores y actuadores finales, y las comunicaciones entre ellos.
  2. Nivel de comunicación. Este nivel contiene la interfaz de comunicación que conecta el nivel de campo y control con el nivel de supervisión.
  3. Nivel de Supervisión. Este nivel puede incluir: estaciones de trabajo de monitorización, servidores SCADA, servidores OPC, servidores de datos, etc.
II. Requisitos

Se identificaron cincuenta y ocho requisitos, clasificados con prioridad alta, media y baja. Dicha identificación de requisitos se basó en criterios como:

  • «La implementación debería ser lo más similar posible al sistema real».
  • «Los componentes del banco de pruebas pueden ser implementados y accesibles desde redes geográficamente diversas para permitir el acceso remoto».
  • «La implementación de SCADA LAB ha de estar alineada con la Metodología de Evaluación del proyecto».
III. Análisis de Metodologías Existentes

Como dice el proverbio, no deberíamos tratar de reinventar la rueda. Por esta razón, se analizaron las principales metodologías existentes para ICS, estándares y documentación relacionada y se llegó a la conclusión de que no había una metodología de pruebas que integrara por completo los objetivos del proyecto. Por este motivo se desarrolló una metodología propia, teniendo en cuenta lo siguiente:

IV. Tipo de Evaluaciones de seguridad

El propósito de cualquier método de evaluación de seguridad es asegurar la fortaleza de un sistema frente ataques malintencionados o fallos habituales de software. La metodología consta de tres tipos principales de evaluaciones: pruebas de caja negra (black box), pruebas de caja gris (grey box) y pruebas de caja blanca (white box).

V. Enfoque del Inventario de Pruebas

La metodología también proporciona un inventario de pruebas de seguridad.

Ejemplo de los detalles de una prueba

- Ejemplo de los detalles de una prueba -

VI. Funciones/Roles

Los roles requeridos durante una evaluación de seguridad, incluidos en la metodología, fueron:

  • Patrocinador.
  • Promotor / Proveedor.
  • Analistas.
  • Autoridad de evaluación.
  • Responsable del banco de pruebas.

Fases de la metodología

Cuando los operadores solicitan una evaluación de seguridad, se han de seguir tres fases: Planificación, Evaluación y Presentación de informes.

Fase I, Planificación

Durante esta fase se prepara un entorno según el tipo de evaluación que se va a llevar a cabo, teniendo en cuenta factores como: el equipo de evaluación, pruebas de conectividad y otros detalles que conforman el plan de evaluación.

Fase II, Evaluación

Una vez se ha planificado la evaluación, se llevan a cabo los pasos necesarios para realizar cada una de las pruebas

Fase III, Presentación de informes

Una vez completadas cada una de las pruebas, se evalúan los resultados y se sacan conclusiones.

Fases de la metodología de evaluación

- Fases de la metodología de evaluación -

Puesta en marcha del laboratorio y banco de pruebas

La siguiente actividad fue la puesta en marcha del laboratorio y el banco de pruebas. Según la arquitectura básica de un ICS, el banco de pruebas consta de tres niveles principales (Nivel de Campo y Control, Nivel de Comunicación y Nivel de Supervisión).

Diseño de la arquitectura del banco de pruebas

La arquitectura del banco de pruebas propuesta incluye todos los componentes requeridos, desde los elementos de más alto nivel localizados en el Nivel de Supervisión hasta los elementos más básicos del Nivel de Campo y Control. También se incluyen tres tipos de canales de comunicación: señales de entrada y salida digital y analógica, Ethernet y comunicaciones serie. Además se incluyen los principales protocolos de control del sector energético: DNP 3.0, MODBUS y IEC 104.

Por otro lado, para poder llevar a cabo las pruebas se conectó un agente directamente con el banco de pruebas (SCADA LAB Testing Agent).

Diseño de la arquitectura del laboratorio

El laboratorio es responsable de gestionar los planes de evaluación, incluyendo toda la información recibida del operador. Los componentes principales de esta área son:

  • SCADA LAB Server, que gestiona los planes de evaluación, incluyendo la configuración del banco de pruebas y las pruebas a realizar.
  • SCADA LAB Front-End, que permite al usuario interactuar con el laboratorio SCADA LAB para solicitar las evaluaciones de seguridad sobre sus entornos y monitorizarlas en tiempo real.

Arquitectura de SCADA LAB

- Arquitectura de SCADA LAB -

Experimentación

Una vez implementados y configurados el laboratorio y el Banco de Pruebas se puede llevar a cabo la evaluación de seguridad. A continuación, se detalla el proceso completo:

Flujo de trabajo de SCADA LAB

- Flujo de trabajo de SCADA LAB -

  1. El operador acede al componente SCADA LAB Front-End para realizar una nueva solicitud.
  2. El técnico recibe una notificación de la solicitud.
  3. Se solicita al operador por email que envíe la documentación requerida: NDA, formulario de autorización, etc.
  4. Una vez que la solicitud es aceptada, el técnico inscribe al operador en SCADA LAB Server y obtiene el fichero de configuración del operador.
  5. El técnico también inscribe al operador en SCADA LAB Front-End y envía el fichero de configuración al operador. Ese fichero incluye el número del usuario, los puertos usados en el banco de pruebas, etc.
  6. El operador descarga la imagen ISO y el fichero de configuración.
  7. El operador instala la imagen ISO en el componente SCADA LAB Testing Agent. El fichero de configuración también debe conectarse a éste, vía USB, para configurarlo.
  8. El operador se conecta al SCADA LAB Front-End y solicita una nueva evaluación.
  9. El SCADA LAB Front-End llama al SCADA LAB Server para recibir más información sobre la evaluación: tipo de evaluación, intervalo de tiempo, objetivo, etc.
  10. El SCADA LAB Server se conecta con el SCADA LAB Testing Agent y configura el plan de la evaluación.
  11. El SCADA LAB Testing Agent realiza las pruebas sobre el objetivo definido.
  12. El SCADA LAB Testing Agent recoge los resultados de las pruebas.
  13. El SCADA LAB Testing Agent envía los resultados al SCADA LAB Server.
  14. El SCADA LAB Server crea un informe técnico que es enviado al SCADA LAB Front-End. A partir de aquí, el operador puede descargarlo.
  15. Por último, el operador puede consultar el informe técnico.

El paso 2 y los pasos desde 9 hasta 15 son automáticos, el resto son manuales o semiautomáticos.

Conclusiones

Esta solución incluye todas las características técnicas y procedimentales necesarias para llevar a cabo una evaluación de seguridad remota en entornos basados en sistemas de control industrial.

Gracias a las evaluaciones de seguridad, los responsables de dichos entornos pueden reunir la información necesaria para tomar decisiones, lo que reduce el riesgo de incidentes de seguridad que podrían afectar gravemente la reputación de la compañía y algunas veces incluso poner en peligro la vida humana.

Sin duda, creemos que es el momento para actuar; propuestas como el proyecto de SCADA LAB pueden ser utilizadas para hacer frente a uno de los principales desafíos de seguridad de la actualidad.

Referencias

Este artículo ha sido publicado en la revista Cyber Security Review, Winter 2014/15 edition