Kaspersky Container Security

Administrar perfiles para la ejecución de contenedores

Al implementar directivas referentes a la ejecución, Kaspersky Container Security puede aplicar las reglas definidas por el usuario para supervisar procesos y la red. Para ello, debe añadir perfiles para la ejecución a las directivas referentes a la ejecución adecuadas. En esencia, las directivas referentes a la ejecución son listas de restricciones para contenedores. Los perfiles de imágenes definen la configuración del despliegue de una imagen segura y las actividades seguras de una aplicación desplegada en una imagen. Las acciones de los perfiles pueden reducir significativamente las posibilidades de que se infiltren ciberdelincuentes en una red y, por otro lado, pueden mejorar la seguridad durante el funcionamiento de los contenedores en entornos de ejecución.

Los siguientes parámetros determinan las restricciones en el perfil de una imagen:

  • Archivos ejecutables que deben bloquearse
  • Restricciones de red para conexiones entrantes y salientes

Los perfiles para la ejecución de contenedores en directivas referentes a la ejecución se aplican a las imágenes que se ejecutan en entornos de orquestación con objetos dentro del clúster. Si un contenedor se inicia fuera del entorno de orquestación (por ejemplo, con los comandos docker run o ctr run), la solución no detectará malware en dicho contenedor.

La solución no analiza automáticamente en busca de malware cuando los objetos se guardan en un contenedor. Recomendamos proteger los archivos de contenedores que están fuera del entorno de orquestación.

En la pestaña Container runtime profiles, en PoliciesRuntime policies, encontrará la lista de directivas configuradas en formato de tabla. En esta sección, también puede hacer lo siguiente:

En esta sección

Crear un perfil para la ejecución

Ejemplos de perfiles para la ejecución configurados

Cambiar la configuración de un perfil para la ejecución

Eliminar un perfil para la ejecución

Inicio de página
[Topic 283062]

Crear un perfil para la ejecución

Para añadir un perfil para la ejecución de contenedores:

  1. En PoliciesRuntime policiesContainer runtime profiles, haga clic en el botón Add profile.

    Se abrirá la ventana para configurar el perfil.

  2. Introduzca el nombre del perfil para la ejecución y, de ser necesario, también una descripción.
  3. En la lista desplegable Scopes, elija uno o más alcances.

    En los perfiles para la ejecución, un alcance permite usar los perfiles de forma correcta en las directivas referentes a la ejecución.

  4. En File Threat Protection, use los botones Disabled/Enabled para activar el componente Protección frente a amenazas en archivos. Este componente se utilizará para buscar y analizar posibles amenazas en archivos; además, proporciona seguridad a los objetos en contenedores, como archivos comprimidos y archivos de correos electrónicos.

    Al aplicar un perfil para la ejecución, si ha activado el componente Protección frente a amenazas en archivos, Kaspersky Container Security activa la protección frente a amenazas en archivos en tiempo real en todos los nodos que están bajo el alcance definido por dicha directiva. La configuración de los agentes desplegados depende de cómo haya configurado Protección frente a amenazas en archivos. Si hace clic en el botón File Threat Protection settings, en la pestaña Container runtime profiles de la sección PoliciesRuntime, puede configurar el componente.

  5. En la sección Restrict container executable files, use los botones Disabled/Enabled para restringir archivos ejecutables según las reglas. En la lista, elija la opción de bloqueo que garantice que los contenedores tengan un rendimiento óptimo:
    • Block process from all executable files: la aplicación bloquea el inicio de todos los archivos ejecutables mientras el contenedor está iniciado.
    • Block specified executable files: la aplicación bloquea los archivos ejecutables que ha elegido en el campo Block the specified executable files. Puede bloquear todos los archivos ejecutables o algunos específicos. Debe detallar la ruta completa original al archivo ejecutable (por ejemplo, /bin/php). También puede usar la máscara * (por ejemplo, /bin/*) para aplicar una regla a todo un directorio y los subdirectorios.

      Puede detallar la lista de los archivos ejecutables permitidos y bloqueados si especifica exclusiones en las reglas de bloqueo. Por ejemplo, puede excluir la ruta /bin/cat para una regla aplicada a /bin/*. En este caso, se bloqueará el inicio de todos los archivos ejecutables del directorio /bin/, salvo la aplicación /bin/cat.

      Ejemplo con una ruta a archivos ejecutables

      Ruta directa a los archivos binarios ejecutables:

      /bin/bash

      Ruta a un directorio con la máscara *:

      /bin/*

      En este ejemplo, se permite la ejecución de todos los archivos ejecutables de los subdirectorios del directorio /bin/.

      Si trabaja con el archivo binario busybox que se entrega con muchas imágenes base de contenedor (como alpine), debe tener en cuenta que busybox contiene un conjunto de comandos para acceder a las aplicaciones sin necesidad de explicitarlas. Por ejemplo, el comando ls se usa para acceder al archivo ejecutable /bin/ls, que actúa como enlace simbólico a /bin/busybox. En este caso, debe especificar la ruta al archivo ejecutable de la siguiente manera: /bin/busybox/ls (es decir, debe concatenar la ruta original del archivo ejecutable /bin/busybox y el comando ls con el símbolo /).

      Si elige la casilla de verificación Allow exclusions, la aplicación bloqueará todos los archivos ejecutables, salvo los especificados en el campo Allow exclusions cuando se inicie y ejecute un contenedor.

      Todas las reglas y excepciones especificadas para estos parámetros son expresiones regulares (regex). En la solución, se emplean patrones e indicadores específicos para buscar todos los archivos que coinciden con una expresión regular en particular.

  6. En la sección Restrict ingress container connections, use los botones Disabled/Enabled para activar la restricción de conexiones entrantes a un contenedor. Si activa esta restricción, Kaspersky Container Security bloqueará todos los orígenes de conexiones entrantes, salvo aquellos especificados en las exclusiones.

    Si elige la casilla de verificación Allow exclusions, puede especificar los parámetros de uno o más orígenes permitidos de las conexiones de red entrantes. Para definir las exclusiones, debe especificar al menos uno de los siguientes parámetros:

    • Sources. En el campo Sources, introduzca una dirección IP o un rango de direcciones IP para el origen de conexiones de entrada mediante los enrutamientos CIDR4 o CIDR6.
    • En los campos TCP ports y UDP ports, debe introducir un puerto específico o un rango de puertos para la conexión.

      Si necesita detallar múltiples puertos, utilice una coma (por ejemplo, 8080, 8082).

      Si no especifica un valor para los puertos, la aplicación permitirá las conexiones en todos los puertos.

  7. En la sección Restrict egress container connections, use los botones Disabled/Enabled para activar la restricción de conexiones salientes de un contenedor determinado.

    Si elige la casilla de verificación Allow exclusions, puede especificar los parámetros de uno o más destinos permitidos de las conexiones de red salientes. Para definir las exclusiones, debe especificar al menos uno de los siguientes parámetros:

    • Destinations. En el campo Destinations, introduzca una dirección IP o un rango de direcciones IP para el destino de una conexión de salida mediante los enrutamientos CIDR4 o CIDR6, o la dirección web (URL) de un destino.
    • En los campos TCP ports y UDP ports, debe introducir un puerto específico o un rango de puertos para la conexión.

      Si necesita detallar múltiples puertos, utilice una coma (por ejemplo, 8080, 8082).

      Si no especifica un valor para los puertos, la aplicación permitirá las conexiones en todos los puertos.

  8. En la sección File operations, use los botones Disabled/Enabled para activar la supervisión de operaciones en archivos que ocurran en el contenedor. Para ello, debe especificar los valores de los siguientes parámetros:
    • Path. No es obligatorio utilizar la barra diagonal (/) al final de las rutas a los archivos o carpetas. Puede permitir el acceso a todos los subdirectorios si escribe un asterisco (*) después de la barra diagonal (/) al final de la ruta.

      Al especificar rutas a archivos, debe introducir rutas completas que comiencen con una barra diagonal.

    • De ser necesario, en el campo Exclusions, puede especificar las rutas a los archivos cuyas operaciones no se supervisarán.
    • Operation type. Puede especificar las operaciones en archivos que supervisará la solución cuando la directiva referente a la ejecución esté aplicada. Para ello, utilice la casilla de verificación para elegir uno o más de los siguientes tipos de operaciones:
      • Create: la solución registra todas las operaciones de creación en archivos en los directorios especificados.
      • Open: la solución registra todas las operaciones de apertura de archivos.
      • Read: la solución registra todas las operaciones de lectura en archivos.
      • Write: la solución registra información sobre los cambios guardados en archivos.
      • Rename or move: la solución registra las operaciones que modifican el nombre de los archivos o mueven los archivos a otras carpetas.
      • Delete: la solución registra la información sobre la eliminación de archivos o carpetas de los directorios especificados.
      • Change access permissions: la solución registra la información sobre los cambios en los derechos de acceso a archivos y directorios.
      • Change ownership: la solución supervisa las operaciones que modifican al propietario de un archivo o una carpeta en el directorio especificado.

    De ser necesario, puede usar el botón Add rule para añadir reglas para la supervisión de operaciones en archivos. La solución aplicará diversas reglas de supervisión de operaciones en archivos dentro de una única directiva referente a la ejecución.

    En el caso de las operaciones en archivos, el modo Audit es el único compatible. Si se especifica el modo Enforce en la directiva referente a la ejecución pertinente, las operaciones en archivos se realizan en el modo Audit.

  9. Haga clic en el botón Add.

En la sección PoliciesRuntime policiesContainer runtime profiles, encontrará el perfil para la ejecución añadido.

Inicio de página
[Topic 296091]

Ejemplos de perfiles para la ejecución configurados

En la siguiente tabla, verá las imágenes utilizadas por la aplicación con mayor frecuencia y la configuración de las restricciones para las directivas referentes a la ejecución.

Imágenes y su configuración

Nombre de la imagen

Restricción de módulos ejecutables en contenedores

Restricción de conexiones de red

Nginx

Archivo ejecutable permitido:

/usr/sbin/nginx

Bloqueo de conexiones salientes

Mysql

Archivos ejecutables permitidos:

/usr/bin/awk

/bin/sleep

/usr/bin/mawk

/bin/mkdir

/usr/bin/mysql

/bin/chown

/usr/bin/mysql_tzinfo_to_sql

/bin/bash

/bin/sed

/usr/sbin/mysqld

Bloqueo de conexiones salientes

Wordpress

Archivos ejecutables permitidos:

/bin/dash

/usr/bin/mawk

/usr/bin/cut

/bin/bash

/usr/local/bin/php

/usr/bin/head

/usr/bin/sha1sum

/bin/tar

/bin/sed

/bin/rm

/usr/bin/awk

/bin/sh

/usr/sbin/apache2

/bin/chown

/usr/local/bin/apache2-foreground

/bin/ls

/bin/cat

Icono "No"

Nodo

Archivo ejecutable permitido:

/usr/local/bin/node

Bloqueo de conexiones salientes

MongoDB

Archivos ejecutables permitidos:

/bin/chown

/usr/local/bin/gosu

/usr/bin/mongod

/usr/bin/mongos

/usr/bin/mongo

/usr/bin/id

/bin/bash

/usr/bin/numactl

/bin/dash

/bin/sh

Icono "No"

HAProxy

Archivos ejecutables permitidos:

/bin/dash

/usr/bin/which

/usr/local/sbin/haproxy

/bin/busyboxal/sbin/haproxy-systemd-wrapper

/usr/loc

Icono "No"

Hipache

Archivos ejecutables permitidos:

/usr/bin/python2.7

/usr/bin/nodejs

/usr/bin/redis-server

/bin/dash

/usr/local/bin/hipache

Icono "No"

Drupal

Archivos ejecutables permitidos:

/bin/bash

/bin/rm

/usr/sbin/apache2

Icono "No"

Redis

Archivos ejecutables permitidos:

/bin/bash

/bin/chown

/usr/local/bin/gosu

/usr/bin/id

/usr/local/bin/redis-server

/bin/sh

/bin/dash

/sbin/redis-cli

/bin/redis-cli

/usr/sbin/redis-cli

/usr/bin/redis-cli

/usr/local/sbin/redis-cli

/usr/local/bin/redis-cli

/bin/busybox

Bloqueo de conexiones salientes

Tomcat

Archivos ejecutables permitidos:

/usr/bin/tty

/bin/uname

/usr/bin/dirname

/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java

/bin/dash

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

Bloqueo de conexiones salientes

Celery

Archivos ejecutables permitidos:

/bin/dash

/sbin/ldconfig

/bin/uname

/usr/local/bin/python3.4

/bin/sh

Icono "No"

Inicio de página

[Topic 265052]

Cambiar la configuración de un perfil para la ejecución

Para cambiar la configuración de un perfil para la ejecución de contenedores:

  1. En PoliciesRuntime policiesContainer runtime profiles, haga clic en el nombre del perfil en la lista de perfiles existentes para la ejecución de contenedores.
  2. En la ventana que se abre, modifique los valores de los siguientes parámetros que desee:
    • Nombre del perfil para la ejecución.
    • Descripción del perfil para la ejecución.
    • Scopes.
    • File threat protection
    • Restrict container executable files.
    • Restrict inbound network connections.
    • Restrict outbound network connections.
    • File operations
  3. Haga clic en Save.

Los cambios de la configuración de perfiles para la ejecución se aplican automáticamente al contenedor en ejecución y afectan a sus operaciones.

Inicio de página
[Topic 290421]

Eliminar un perfil para la ejecución

Para eliminar un perfil para la ejecución de contenedores:

  1. En la tabla que contiene los perfiles para la ejecución configurados, en PoliciesRuntime policiesImage profiles, haga clic en el icono de eliminación (Icono "Eliminar".), en la fila del nombre del perfil que desee eliminar.
  2. En la ventana que se abre, confirme la acción.
Inicio de página
[Topic 264973]