Visibilidad y detección de anomalías, Parte III

Following Part I and Part II, we will give another example why OT monitoring is necessary to have a look about what is happing in industrial environment. The last one finished if somebody connected their laptop to the network and then to a PLC. Today, we will see what happens if somebody, that is, a third party, contractor, support team, etc. carries out a task that requires that the PLC CPU goes to STOP and the process, as well.

Having said this, imagine a manufacturing plant in operation and during an intervention, an engineer puts online and accidentally sends a STOP command by STEP7 software or something similar that requires it. Obviously other scenario can be a targeted attack on an exposed controller in the network.

If this occurs a message will appear in “Alerts” tab with score of “10” in the risk column. In the picture below we can see the steps since the PC (IP: 10.10.201. 103)  establishes connection with the CPU (IP, 10.10.201.102) by COTP protocol and sends STOP and START requests.

If we open both alerts, we will find more information of the source, its MAC and IP address, port, protocol, direction and so on.

For troubleshooting purposes, we can download a trace of the packets to find more low-level information. After that we are able to open it with a network protocol analyzer.

This example has been done once Guardian is in Protecting mode. Before this, we have to configure the tool in a “Listening” mode to learn about the asset, protocol, communication, behavior, etc. to take a picture of the network and everything it contains.

If this event occurs during this time, the alert can be different. In this case the alert will be scored with 9 and 6 values, respectively. In the first example we have to remember that the device from which we send STOP command, has not been discovered during “Listening” phase so the tool will categorize the action with a higher value.

Until now, we talked about a concise command. But if the CPU is not protected as I wrote in previous posts.

So, we can go one step ahead and think that if we can reach the PLC to STOP and START the CPU we could access and download it’s program. If it can be done, we could modify it and then upload it again to cause error condition, alter variables, configure passwords in order to do not permit legitimate access, and so on. If this occurs, we could identify it as shown in the  following picture.

Today we have analyzed different actions that can be identified by Nozomi Guardian monitoring tool, it can help us to detect actions that could alter normal operations. After this, we could start to investigate how a machine tool, production line or other facility stops without any reason.

However, it is important to remark that before deploying any security monitoring tool, an organization should have carried out other technical actions. One of them is to separate and segregate IT and OT environments. To do so, it is necessary to identify, analyze and decide which traffic must be permitted to pass across our firewalls. Once it has be done, we will have the criteria to say if what is happening is a normal or abnormal behavior. In other words, if we do not identify and understand which workstations  can access  industrial equipment and implement a strict change management process, we will not have the capacity to discover the root cause of the alert. Does somebody act on a PLC? Is it an attack? Has the communication module  failed?

These tools are useful solution if we implement it on stable, well-know and secure OT network.

Thanks for reading the post! See you!!

Visibilidad y detección de anomalías, Parte II

Siguiendo con la Parte I sobre “Visibilidad y detección de anomalías” comenzaremos un conjunto de ejemplos sobre cómo estas herramientas especializadas pueden ayudarnos a detectar ciertas situaciones.

Pongamos el primero. Un equipo ajeno a nuestra organización se conecta a la red de fábrica para llevar cabo una intervención por parte de un tercero. Esto es, un proveedor, una ingeniería. Algo muy habitual, y necesario, dado el grado de especialización que requiere la puesta en marcha o mantenimiento de maquinaria. ¿Y por qué digo necesario? Porque, salvo aspectos previamente acordados, esta tarea es llevada por los fabricantes de esa maquinaria.

Para ello se firman contratos de soporte que garantizan tiempos de respuesta, intervenciones programadas según necesidades, etc.. Y claro está, deberán de utilizar sus propios equipos. Los mismos donde tienen instalado el software y herramientas necesarias para hacer su trabajo y que como sabemos el precio de las licencias no suele ser especialmente económico como para que asuma el coste el propietario cuando él lo que contrata es un servicio.

Por ello, y otras razones es que esta situación es inevitable en muchos entornos y asumir que un equipo del que no sabemos a priori de su estado de protección, uso se le ha dado, a qué redes se ha conectado, software instalado, entre otras; es inevitable.

Dado que este equipo no ha sido registrado en el “período de aprendizaje” una vez conectado a la red y gracias a la replicación de tráfico a través del puerto espejo es que Nozomi Guardian detecta que tanto MAC como IP, genera una alerta categorizada como “10”.

Si accedemos al detalle de este podremos ver de una manera desglosada todas las acciones que ha intentado llevar a cabo.

En la parte inferior, además, vendrá representada de manera gráfica las IPs, protocolos y sentidos contra los que se quiere establecer comunicaciones. Esto aporta un grado de intuitividad y simplicidad importante cara a interpretar la información, lo cual ayuda a la persona encargada de atender las alarmas como la resolución DNS contra los servidores de Google. Adicionalmente a la derecha entontaremos información complementaria como Sistema operativo, tipo de nodo, MAC, IP, entre otras.Ahora bien, hasta aquí no deja de ser un comportamiento al uso, Ahora bien, ¿cómo se vería por ejemplo si quisiera ponerse online con la CPU de un PLC? En este caso he elegido SIEMENS STEP7?

Pues bien podríamos ver algo así:

Como podemos ver en este caso ya vemos protocolos COTP y S7 aparte de otras alertas como “NEW-FUNC-CODE” propias de esta conexión.

A partir de aquí ya habrá que determinar la acción a tomar como puede ser si se trata de un falto positivo, intervención sin notificación previa a responsables, registro, tratamiento, etc. Tan importante es detectar las anomalías como saber qué hacemos con ellas, por lo que deberá existir un procedimiento de actuación y escalado para determinar qué hacer.

Hasta aquí ejemplo de qué es lo que veríamos en caso de que un nuevo nodo aparezca en nuestra red.

¡Nos vemos en la próxima!

¡Un saludo!

 

Visibilidad y detección de anomalías, Parte I

El progresivo aumento de buses de campo y protocolos basados en tecnología Ethernet y otros sistemas, hace que nuestros activos tecnológicos estén cada vez más visibles por la red que los une. Sin duda, esto trae consigo múltiples beneficios, pero también riesgos que deberemos mitigar, reducir o transferir hasta un punto en el que sean asumibles por las organizaciones. El riesgo cero no existe y la seguridad al 100% tampoco.

Con la llegada de Ethernet, la superficie de exposición aumenta, y lo hace para poder ganar acceso y recolectar información de los dispositivos sobre los cuales se basa el tan citado “proceso”. Sin embargo, esto sucede tanto para bueno como para lo malo. Y es que, para ganar flexibilidad, escalabilidad, interoperabilidad y prestaciones, tenemos que pagar un precio.

Adicionalmente, vemos cómo las amenazas y acciones malintencionadas sobre los sistemas de control, y otros coligados a éstos, van en aumento. Y lo hacen, entre otras razones, por el beneficio económico que éstas pueden generar para el que la lleva a cabo. Aparte de la propia idea del sabotaje, por supuesto. Y claro, entre que la seguridad no ha sido un requisito, el continuo reporte de vulnerabilidades, las dificultades por corregirlas, la posibilidad de acceder de forma local o remota por red, y falta de medidas de seguridad hace que se genere una situación de lo más propensa.

Es por ello que sea necesario que, una vez acometidas las acciones necesarias a nivel de red como Separación y Segmentación y Deep Packet Inspection, o a nivel de equipo final en PLCs o equipos basado en arquitectura PC basado en Whitelisting, debamos tener visibilidad de lo que pasa en nuestro entorno de planta. Es decir, monitorizar su comportamiento y por tanto tener un mecanismo de alerta temprana ante anomalías.

Como ya comentamos existen en el mercado distintas soluciones entre ellas Nozomi Guardian. Con su versión 20.0 recién lanzada al mercado y en la que introducen numerosas mejoras respecto a su predecesora, veremos algunos ejemplos sobre su necesidad y ejemplos de utilidad. Para ello se partiremos del siguiente esquema.

En él hay representado un autómata virtualizado SIEMENS S7-300 con IP 10.10.201.102; un equipo portátil con IP 10.10.201.103 y una RTU 10.10.201.102. La sonda estará conectada a un puerto espejo donde se replicará el tráfico de los anteriores. La administración de la sonda Nozomi Guardian se realizará en otra del rango 10.10.101.10/24 donde se ubica el servidor que recolecta información de ambos, RTU y PLC. Sí, lo sé, las redes de administración deberían tener su propio segmento pero esto es un entorno de laboratorio. Como se puede apreciar el rango 10.10.201.0/24 pertenece a la de planta y 10.10.101.0/24 iDMZ.

Conviene recordar que en el momento de su despliegue hemos de establecer un período de aprendizaje en que la herramienta hará un perfilado de sobre los activos y comportamiento. A partir de aquí, empleará esta información para indicar la aparición de un nuevo activo, nodo, protocolo, variable, entre otros. La duración dependerá de varios factores como la ocurrencia de eventos que deban ser recogidos, tamaño de la red, equipos implicados, entorno, etc.

En este sentido para generar las alertas, se ha decidido establecer un período de aprendizaje “Learning” de aproximadamente, más o menos, 5 minutos para luego configurar en modo ”Protecting”.

Así pues, durante ese tiempo el sistema detecta los siguientes equipos:

A lo largo de sucesivas entradas iremos ejemplarizando distintos escenarios de riesgo a través de la herramienta Guardian de Nozomi Networks y de cómo se convierten en una necesidad una vez alcancemos un nivel de madurez mínimo.

Ahora bien, no pensemos que esto funciona solo. Deberemos tener un conocimiento mínimo de nuestra red para poder hacer una correcta gestión de las alertas que se nos generan y apoyarnos en otros como los cortafuegos. En ese sentido, y salvo que estos últimos operen en Capa 2 o tengan la capacidad de filtrar las comunicaciones dentro de la misma subred, no detectarán comunicaciones entre segmentos. Si no sabemos lo que es legítimo difícilmente podremos identificar lo anómalo, y por tanto tomar medidas correctoras para neutralizarlo.

¡Nos vemos en la próxima!

¡Un saludo!