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!

 

CPU Protection, Part II

In addition to my last post where I talked about CPU protection (click here to access), today I will write about how we can detect if protection is enabled on a S7-300. If not, we could connect to the PLC (CPU or communications module), upload the program, and modify it. After this, download it again.

Other actions that could be accomplished are establishing new passwords on FCs, FBs, etc. When a legitimate user would want to access to read or write them, he/she could not do it because would not know the configured password.

S7Scan tool can help us to get this information, CPU Protection. We have to take a look at “Module Protection” section. There, we can see if this is set up. In the figure below, it is not.

Well, what can we do? As I said we could be online and inspect the program, its configuration and upload it.

On the other hand, if “Module Protection” is configured as on the picture below, we will not be able to do it.

A password will be requested in two ways. Firstly, if we want to access to a Block or Function after we are online.

And secondly, if we want to upload the program. See the area where indicates “<introducir contraseña> that means <introduce your password>

This is an example on how these features can help us introducing new controls. Are they all effective as we expect? Well this is another question… During this work I found there is a limitation of eight characters long.

Apart from this, we know that passwords can be cracked by specific software or stored in plain text. Configure a password it is not a silver bullet to protect access. We have to implement other security measures and try to stop an intrusion, deliberate action or similar, before it reaches the objective.

We can not trust the security device by its own features because they could not be as robust as they should be. Industrial components, devices or systems have been designed to be robust, simple, reliable, safe, etc. not secure. Security is relatively new, since attacks have been carried out or vulnerabilities have been discovered and published.

Thanks again, I will see you in the next!

Having said this, I hope you have enjoined this post!

To be continued…

Stay tuned!

Webinar Quick Start Guide: ISA/IEC 62443

ISA/IEC 62443 is the most important reference for Industrial Cybersecurity and it is the global standard worldwide. However, It is not the only one and you can find other guidelines or whitepapers that can help you. These are NIST 800-82r2; NIST Cybersecurity Framework; NIST Cybersecurity Framework Manufacturing Profile; BSI ICS Security Compendium; among others.

If you do not know what IEC 62443 is, you can find the following webinar where you can be introduce to it and learn some concepts about how to protect your OT environments.

Enjoy it!