Autenticación y Autorización, conceptos básicos

Como hemos hablado en muchas ocasiones no existe una medida con la que podamos garantizar la seguridad de nuestras instalaciones máquinas o plantas. Sino que será la puesta en marcha de un conjunto de ellas que, de forma coordinada, establecerán distintas líneas de defensa.

La estrategia de Defensa en Profundidad establece diferentes niveles tanto a nivel organizativo como técnico, siendo uno de ellos el control de accesos. Estos pueden llevarse bien tanto a nivel de red a través de una Separación y Segmentación mediante el filtrado de direcciones IPs y puertos, o llevando a cabo DPI (Deep Packet Inspection) sobre protocolos industriales tanto propietarios (S7, FINS, etc.) como estándares (OPC UA, Ethernet/IP, IEC-104, etc.).

No obstante, a nivel de dispositivo, o sistema, también deben llevarse a cabo controles de acceso para restringir qué o quién puede conectarse a ello y hacer tal o cual cosa. Más aún cuando los equipos ya presentan, y cada vez haya más interfaces y protocolos, para poder conectase a servicios o funcionalidades. Esto es, servicio web (HTTP; HTTPS), consola (Telnet, SSH), envío de copia de respaldo y programas por FTP, protocolos como OPC UA, etc.

Desde el punto de vista de la seguridad restringir, controlar, impedir o limitar que éstos se reduzcan a los mínimos imprescindibles, es básico. Con ello podremos reducir las posibilidades de que algo o alguien puedan hacer cambios tanto de manera intencionada como no intencionada que puedan alterar la normal operación o realizar cambios con unas u otras consecuencias. También recolectar información sobre los dispositivos finales bloqueando los comandos correspondientes.

A diferencia de los entornos IT, el uso de control de acceso físico está, y estará muy extendido. Esto es el uso de llaves o mecanismos que requieran cambiar de un modo a otro que permitan la realización de cambios de forma remota o también local. Esto es algo que podemos encontrar en CPUs de PLCs de Schneider Electric, Siemens o Allen Bradley. Sin embargo, no son los únicos, controladores de robots también pueden tenerlo como es el caso de los ABB con los selectores de Automático, Manual o Manual 100%.

Saliendo de los controladores, también los HMIs, PCs industriales con uno u otro uso, pueden incorporarlo. Como puede ser el caso de llaves que tras introducirlas en un lector permiten la realización de tareas en función del perfil en ellas incluidas. Ejemplo de ello puede ser Euschner o Pilz entre otros.

Pero también, y como ya estamos acostumbrados, podemos realizarlos de manera lógica. Esto es, introduciendo un usuario/contraseña, PIN, etc. Sin embargo esto no es suficiente, ya que debe determinarse que puede hacerse sobre el equipo. Es decir que una vez validado, que las capacidades no sean ilimitadas.

Por tanto, aquí entran en juego dos conceptos, aunque obvios para Tecnologías de Información, no lo es tanto cuando los aplicamos a las de Operación. Estos son, Autenticación y Autorización.

Entendemos por “Autenticación” el proceso por el que se comprueba una identidad a través de alguna credencial como puede ser una contraseña; un usuario y contraseña; un código numérico; certificado digital; etc.

Mientras que “Autorización” hacemos referencia a los permisos o privilegios que dispondrá una persona, software, o activo en general una vez que el proceso de autenticación se ha realizado con éxito. Estos niveles deben estar relacionados y  en consonancia con el rol que tenga una persona dentro de la organización para determinar lo que puede o no hacer. Por ejemplo, no es lo mismo las capacidades que pueda tener un Jefe de un equipo de Mantenimiento a un técnico especialista que se debe circunscribir a los equipos que son de su ámbito.

Esto extrapolado a la Ciberseguridad Industrial podrían ejemplarizarse, en el caso de la “Autenticación” en quién o qué puede conectarse a un equipo; quién puede tener acceso a un proyecto de un PLC; quién puede iniciar sesión en una Workstation; etc. Y en el caso de la “Autorización” si se puede escribir una variable o simplemente leerla; si puede visualizarse el estructura del programa de un PLC y no modificarse; o si desde un HMI puede resetearse una alarma y re armar la estación tras un fallo.

En las siguientes imágenes podemos ver el acceso. a la interfaz web de un PLC SIEMENS S7-1200 donde en el primero de los casos nos validamos correctamente, es decir nos autenticamos. En ella además podemos ver cómo incluso podríamos llevar a cabo una parada de la CPU, arranque o encender los leds.

Mientras que si definimos un usuario con menos privilegios podríamos no permitir la parada de la CPU, el arranque o encender los leds. Las posibles opciones quedan determinados en las opciones de la derecha.

Esta comprobación de una identidad puede hacerse bien de forma local o remota. Es decir, si las credenciales son comprobadas en el mismo equipo, aplicación, sistema o componente o si por el contrario se acude a un sistema externo como un servidor como Active Directory, LDAP, RADIUS o una solución comercial de un fabricante.

Por mi experiencia y, como norma general, estas comprobaciones en entornos industriales se realizan de manera local siendo las menos de manera centralizada, dependiendo de qué estemos hablando. Si es un PC de operador o de visualización que posee un sistema operativo de propósito general; si hablamos de un mini PC que administra una estación; un PLC; un HMI; etc. Etc.

Aunque hablemos de sistemas operativos de propósito general como Microsoft Windows o GNU/Linux hemos de tener en cuenta uno de los aspectos diferenciadores y es su ciclo de vida, mayor que los y entornos IT. Esto puede condicionar la forma en la que las nuevas funcionalidades o mejoras que presenten los mecanismos de Autenticación y Autorización dentro de las diferentes versiones de sistemas operativos o firmware. Por ejemplo, si tenemos un puesto de operador con Windows 7 y lo queremos integrar en un dominio con un controlador Windows Server 2019; o bien disponemos de un equipo con una versión GNU/Linux Debian y empleemos SAMBA.

Como vemos resulta necesario establecer los Controles de Acceso necesario, no sólo a nivel de red sino sobre los equipos finales a través de alguna de sus funcionalidades. Adicionalmente no vale sólo con establecer el control sino determinar qué cosas pueden realizarse. De nada no sirve establecer un usuario y contraseña si luego ese usuario tiene permisos administrativos cuando no debería tenerlos.

En próximas entradas pondremos algunos ejemplos sobre cómo podemos poner en práctica estas cuestiones sobre distintos ámbitos en tecnología OT.

¡Nos vemos en la siguiente!

1 comentario en “Autenticación y Autorización, conceptos básicos

  1. Pingback: Enredando con redes ...Autenticación y Autorización, protegiendo proyectos. Parte I.Enredando con redes …

Deja un comentario