KICS for Nodes, Parte III

Following with “Whitelisting” topic for protecting industrial computers, today we will talk about the step before its configuration, and how to protect our systems with Kaspersky´s KICS for Nodes solution.

Once we have deployed KICS for Nodes modules, the next step is to make an inventory of the software installed on these computers to permit or deny its execution. As mentioned in the post named “KICS for Nodes, Parte II” before that, we have to proceed with an antivirus scan to be sure that the target host is not infected by any piece of malware. If this occurs and it is under a running process, it could be authorized in the whitelist.

For this reason, we will set up a task to scan the system before creating a Whitelist. However, this step must be done keeping in mind that we can impact negatively on the host´s performance when the antimalware software starts to analyze the system. And, of course the tasks related with the process under control.

First of all, we will select the task called “On demand Scan”.

Then you must specify which areas will be analyzed and apply security level. Keep in mind that a deeper inspection will consume more hardware and system resources and take more time.

By default, there are a set of predefined profiles that includes more or less actions during the scan.

Nevertheless, it is possible to make a customized profiles by defining a lot of parameters according your preferences. You will find it in the “General”, “Actions” and “Performance” tabs and in all subset parameters, as you can see in pictures below. It includes what to do if a piece of malware is detected, objects to scan, extensions, and so on.

Here I will point out the “Excluded Files” option. The first analysis that it is recommended, is to scan the hard disc drives as much as possible to find a malware. But once we do it, a re scan of some folders which have a large number of files, could not be needed. For example, SIEMENS TIA Portal software suite that can occupy several gigabytes in the installed modules. If we do it and reduce the time scan, we must assume that if there is a piece of malware in that folder it will not be detected.

Finally we will enable or disable the heuristic module and if it is activated how must, it will works to find code that is not in the antivirus database.

When everything is defined the task will be ready to be applied. According to the enabled features, light or deeper analysis, among other configurations, will determine the time needed to complete the scan will be short or long.

But it is not this aspect on I want to focus on, at the time. I want to show you how an antivirus scan can impact on system behavior, and the amount of resources that could be consumed. In the picture below you can see a idle PC with SIEMENS TIA portal V13, Schneider Electric, installed. The usage of CPU can vary from 1 to 10 percent or even 0 percent when I took the screenshot. The memory has a baseline around 2 GB.

But what happens when the scan starts? The CPU usage increases to 96 percent.

After several seconds we can see that the memory increases and the CPU consumption can vary but is constantly high around 80-90 percent.

This is very important to notice because if we run an antivirus scan, we could impact negatively on system´s resources and in consequence the tasks associated to the industrial process.

This is one reason about why we must be aware how to run some tasks on systems, and why is important to schedule them or configure them with other features.

As we know some facilities and industries work 24x7x365 and do not stop their activities unless is necessary for production, preventive maintenance or other mandatory tasks. For these reasons sometimes will not have a time window to run an Antivirus scan, so we could be forced to run it without impacting on the performance during operation hours.

If this occurs, we are able to check “Perform task in background mode” in the task options. Doing this, we will modify and reduce the task priority in the operating system.

For a better understanding, following the complete description of this feature that you can find in the KICS for Nodes Administrator´s Guide

The check box modifies the priority of the task. 

If the check box is selected, the task priority in the operating system is reduced. The operating system provides resources for performing the task based on the CPU load and protected device file system load from other Kaspersky Industrial CyberSecurity for Nodes tasks and other applications. As a result, task performance will decrease during periods of increased loads and will increase at lower loads. 

If the check box is cleared, the task will start and run with the same priority as the other Kaspersky Industrial CyberSecurity for Nodes tasks and other applications. In this case, the task performance increases. 

The check box is cleared by default.

That’s all for now, stay tuned for the next one.

See you!


KICS for Nodes, Parte II

Once we have installed Network agent, we will deploy KICS for Nodes. Before this we must install management plugin on Kaspersky Security Center, which requires a restart after the process is finished. It is recommended to make sure that the plugin has been installed correctly. You can check it by going to Administration server and verify its properties.

The next step will be installing KICS for Nodes software package to control software, virus presence, and many more. Before that, we will import KICS for nodes generic policy and distribute it on target hosts even before KICS for Nodes has been installed. Do not worry, this generic policy excludes any device and whitelist control so the PC will work without any restriction. Later on, we will have to configure it and give specific whitelist and device controls and, of course, other security options such as enabled modules, anti-virus analysis, exclusions, etc.

Keeping in mind that each deployment must be carried out in accordance to engineering and production requirements of automation and industrial systems. So, we will plan and inform each action to take.

As you can see in the picture below, there are two kind of policies. One for Network Agent (KLagent) and other for KICS for Nodes software.

Once it has been imported, we have to activate it. As I said, there is not any direct effect on the target system because KICS for Nodes is not installed yet.

To deploy KICS for Nodes, KSC allows installing software on managed devices groups by setting up a package. First of all, we have to create it by importing a precompiled kics.kud file but you can import a .exe file as well. For more info please visit this link.

In the picture below you can find two files, one imported by an .kud file and the other one with .exe

Once we have created KICS for Nodes packages, we can customize them configuring the components to install before executing the remote installation wizard. During the process we will have to give some additional information such as target hots, admin credentials, among others.

These are the grouped hosts which we are going to install KICS for Nodes. We can select one by one or the folder which includes them all.

Other software is recommended to be installed such as published hotfixes to correct issues, improvements, or bugs.

After this, the next step to follow is to perform an on-demand antivirus scan. Why? Because we must be sure that the host is not infected by any kind of viruses. If this occurs, we could include virus processes in our whitelist and, in consequence, allow its execution. However, we must keep in mind that this analysis can consume CPU, memory and other hardware resources and impact on the host behavior.

Next, we will configure according our needs. KICS for Nodes policy has in the left hand a column named “sections” where you can find the features grouped by functionality. For example, in “Local activity Control” you can configure modules regarding “Application Launch Control”, “Device Control” and “Wi-Fi Control”.

But if you navigate in other section, such as “Real Time computer protection” you can see other features regarding “Real-Time File Protection”, “KSN usage” and “Exploit Prevention”.

And that is all for now. In the next article, we will explore the different options and show how whitelisting technique works to prevent the execution of any non-authorized software.

See you!


Análisis de dispositivos USB

Aunque su uso esté ampliamente extendido, de sobra son conocidos los riesgos que entraña el mal uso de memorias de almacenamiento USB y discos de duros externos. Si bien son de mucha utilidad, y en muchos de los casos única vía de compartir de ficheros, pueden convertirse en transmisores de código malicioso, robo de información, entre otros.

Si bien existen soluciones de protección de puesto para PC donde se puede limitar el uso a unos pocos mediante la identificación y registro previo, en entornos industriales existen otro tipo de dispositivos y sistemas que también los utilizan. Ejemplo de ello pueden ser los Controladores Numéricos (CNC) en máquina herramienta o maletas de programación en controladores de brazos robóticos. En el primero de los casos para la transmisión de programas para la realización tareas de mecanizado y en el segundo para las trayectorias de o los brazos.

En esos casos donde es posible no implementar soluciones software resulta necesario realizar un análisis previo para reducir la posibilidad de que estemos empleando unos medios de transmisión de ficheros infectados por alguna pieza de código malicioso. Y digo reducir la posibilidad ya que, como cualquier otra solución basada en firmas, y en concreto los antivirus, podrían no alcanzar una protección sobre ciertas piezas de código. Aunque hace tiempo de aquello, no nos olvidemos del caso IRONGATE en la que dicha pieza no fue descubierta por las distintas herramientas empleadas por el portal VIRUSTOTAL tal y como recogía el siguiente artículo.

Irongate Malware, Thoughts and Lessons Learned for ICS/SCADA Defenders.

Así pues, en aras de proceder a un análisis previo para un uso posterior podemos recurrir a estaciones en las que introducir el elemento USB, proceder a un análisis por un software antivirus y, una vez que tengamos el resultado en la que no se ha detectado código malicioso, proceder a su uso en las estaciones o elementos del entorno de planta.

Para ello Podemos contar con soluciones “SafeDoor” de la compañía AuthUSB.

Se trata de un dispositivo hardware con un software en su interior que nos permitirá analizar, acceder y gestionar la información almacenada. Además, nos ofrecerá protección contra ataques de índole eléctrico como USB Killer o también BadUSB para la generación de interfaces o instrucciones programadas que permitan interactuar con el equipo al que se conecta.

Para su uso, dispone de una conexión de red a cuya IP deberemos conectarnos para acceder al contenido de las memorias conectadas y la distinta configuración disponible como la generación de usuarios con permisos de lectura/escritura; certificados; etc. cuando lo hagamos como administradores.

Al introducir una memoria el dispositivo realizará un análisis en busca de malware a partir de los motores habilitados a tal efecto, pudiendo disponer hasta dos en la versión utilizada para el presente artículo.

Una vez finalizado nos informará de si la unidad está infectada, o no. El resultado podrá verse de forma inmediata a través de uno de los leds que dispone en el frontal. Rojo si ha localizado alguna anomalía o verde si todo está OK.

Luego, accediendo a la interfaz web, podremos obtener información sobre el o los ficheros que ha identificado como maliciosos, así como su ubicación dentro de la misma. En es te caso he empleado a modo de prueba de concepto el fichero EICAR Test File que podéis encontrar aquí.

Dado que dispone de dos conexiones USB, si no hay infección podremos descargar el contenido o copiarlo en una segunda unidad.

Respecto al acceso, podremos definir un conjunto de usuarios con permisos de lectura o escritura, según decidamos al volumen concreto. Esto es, podremos definir sobré qué y cómo se puede acceder.

También podríamos acceder a su contenido por red, siempre y cuando esto pueda llevarse ya que como todos sabemos podemos disponer de elementos aún si esa capacidad. En ese caso visualizaremos los directorios y ficheros pudiendo realizar distintas acciones.

Sin duda los dispositivos USB son elementos no sólo muy utilizados sino que además necesarios dentro de estrategias de recuperación ante desastres como un disco duro externo con copias de respaldo de proyectos de PLCs, programas, ficheros de texto con logs, actualizaciones de software, despliegue de licenciamiento, etc.

Hasta aquí la entrada de hoy. ¡Nos vemos en la siguiente!

Un saludo!