Cumplimiento del nodo

Las imágenes de nodo locales de GKE On-Prem vienen preconfiguradas con la configuración PCI DSS, NIST Baseline High y DoD Cloud Computing SRG Nivel de impacto 2.

En las siguientes secciones, se describen los parámetros de configuración de cumplimiento que cambiaron.

Paquetes instalados

Los siguientes paquetes se incluyen en las imágenes del SO del nodo:

Auditoría

Las reglas de auditoría agregadas al sistema operativo cumplen con los requisitos para registrar cambios en los permisos y propiedad del archivo, eliminación del archivo, eliminación o carga de módulos de kernel, uso de comandos privilegiados y comandos de administración del sistema.

Los siguientes eventos se registran mediante una auditoría en el SO del nodo:

  • Modificaciones de control de acceso discrecional (DAC):

    • chmod: cambia los modos de archivos o las listas de control de acceso
    • chown: cambia propietario y grupo del archivo
    • fchmod: cambia modo de archivo
    • fchmodat: cambia modo de archivo
    • fchown: cambia el propietario y el grupo de un archivo
    • fchownat: cambia el propietario y el grupo de un archivo
    • fremovexattr: quita un valor de atributo extendido
    • fsetxattr: establece un valor de atributo extendido
    • lchown: cambia el propietario y el grupo de un archivo
    • lremovexattr: quita un valor de atributo extendido
    • lsetxattr: establece un valor de atributo extendido
    • removexattr: quita un valor de atributo extendido
    • setxattr: establece un valor de atributo extendido
  • Eliminación de archivos

    • ename: cambia el nombre de un archivo
    • renameat: cambia el nombre de un archivo
    • rmdir: quita directorios
    • unlink: quita entradas del directorio
    • unlinkat: quita la entrada del directorio
  • Carga módulo de kernel

    • deleted: Quita un módulo de kernel que se puede cargar sin usar
    • finit: carga el módulo del kernel desde el descriptor de archivos
    • init: carga una imagen ELF en el espacio del kernel
  • Eventos de acceso

    • faillock: Se bloquea la cuenta de usuario después de varios intentos fallidos de acceso
    • lastlog: registros de acceso
    • tallylog: Registra intentos de acceso correctos y sin éxito
  • Exportación de contenido multimedia: comandos de mount -F para activar sistemas de archivos remotos

  • Comandos privilegiados

    • chage: Agrega o cambia la información de la base de datos de usuarios
    • chsh: Agrega o cambia la información de la base de datos de usuarios
    • crontab: mantiene los archivos crontab para usuarios individuales
    • gpasswd: Permite establecer o cambiar la contraseña de la membresía del grupo
    • newgrp: cambia a un nuevo grupo
    • passwd: modifica la contraseña de un usuario
    • postdrop: utilidad de publicación del correo de Postfix
    • postqueue: control de la cola de Postfix
    • ssh_keysign: administra claves de host para SSH Daemon
    • su: sustituye la identidad del usuario
    • sudo: ejecuta un comando como otro usuario
    • unix_chkpwd: verifica la contraseña del usuario actual
  • Acciones de administrador del sistema: modificaciones de sudoers

  • Apagado del sistema: Apagado y reinicio del SO

  • No se pudo modificar el archivo

    • creat: Crea un archivo nuevo
    • ftruncate: trunca o extiende un archivo a una longitud especificada
    • open: abre archivos y directorios
    • open_by_handle_at: abre o crea un archivo para leer o escribir
    • openat: abre o crea un archivo para leer o escribir
    • truncate: trunca o extiende un archivo a una longitud especificada
  • Modificación del grupo o usuario

    • group: pertenencia a un grupo local
    • gshadow: base de datos de contraseña de grupo
    • opasswd: base de datos de reutilización de contraseñas
    • passwd: información de acceso del usuario local
    • shadow: Base de datos de contraseña de usuario local con hash

Requisitos de la contraseña del perfil de usuario

Los requisitos de complejidad de la contraseña del usuario son necesarios para el cumplimiento. Estos requisitos de complejidad se implementan en /etc/security/pwquality.conf de la siguiente manera:

minlen = 15
lcredit = -1
maxrepeat = 3
difok = 8
maxclassrepeat = 4
ocredit = -1
dcredit = -1
ucredit = -1
minclass = 4

Servidor SSH

Se implementó la siguiente configuración en la configuración del servidor sshd.

Banner del sistema

El mensaje de advertencia refuerza el conocimiento de la política durante el proceso de acceso y facilita posibles acciones legales contra los atacantes. De manera alternativa, los sistemas cuya propiedad no debe ser evidente deben garantizar el uso de un banner que no proporcione una atribución sencilla.

Protocolo SSH 2

El protocolo SSH 1 es menos seguro y se debe desactivar para evitar que los clientes negocien por accidente un parámetro de conexión vulnerable.

Inhabilita el acceso raíz de SSH

SSH no debe permitir el acceso directo como usuario raíz, ya que esto oculta la capacidad de realizar un seguimiento de las acciones administrativas.

SSH no permite PermitUserEnvironment

PermitUserEnvironment puede eludir la configuración en el servidor. Esta configuración garantiza que la configuración no segura no se importe durante el establecimiento de la sesión.

Banner de advertencia de SSH

El mensaje de advertencia refuerza el conocimiento de la política durante el proceso de acceso y facilita posibles acciones legales contra los atacantes. Esta configuración garantiza que el daemon SSH presente el contenido del banner configurado del sistema.

Tiempo de espera de inactividad de SSH

SSH permite a los administradores establecer un intervalo de tiempo de espera de inactividad. Después de que pase este intervalo sin actividad, el usuario saldrá de su cuenta automáticamente.

Keepalive de SSH

Esto garantiza que el acceso de un usuario finalice en cuanto se alcance el tiempo de espera de inactividad de SSH.

Algoritmos de cifrado aprobados por SSH

Los mecanismos no aprobados que se usan para la autenticación en el módulo criptográfico no están verificados y, por lo tanto, no se puede depender de su confidencialidad ni su integridad, y los datos del sistema pueden verse comprometidos. Los sistemas operativos que usan encriptación son necesarios para usar mecanismos compatibles con FIPS para autenticarse en módulos criptográficos. FIPS 140-2 es el estándar actual a fin de validar que los mecanismos usados de acceso a módulos criptográficos usen autenticación que cumpla los requisitos gubernamentales y de la industria.

MACS aprobado por SSH

Limita los MAC a los algoritmos hash que estén aprobados por FIPS.

UsePrivilegeSeparation de SSH

La separación de privilegios del daemon de SSH hace que el proceso de SSH descarte los privilegios raíz cuando no son necesarios, lo que disminuye el impacto de las vulnerabilidades de software en la sección sin privilegios.

Mostrar los intentos de acceso de SSH

Si se realizó correctamente la autenticación, se mostrarán los intentos de acceso anteriores. Esto es para informar al usuario sobre accesos inesperados.

Análisis de integridad de archivos

Se configuraron las siguientes verificaciones de integridad de AIDE:

Análisis periódico de AIDE

Como mínimo, se debe configurar AIDE para ejecutar un análisis semanal. Como máximo, se debe ejecutar AIDE a diario. De forma predeterminada, Ubuntu configura AIDE para que se ejecute a diario.

Notificación de AIDE

AIDE debe notificar al personal apropiado sobre los detalles de un análisis después de que este se ejecutó. La configuración predeterminada de AIDE en Ubuntu envía automáticamente los informes por correo electrónico en /etc/cron.daily/aide.

AIDE: Usar hashes criptográficos aprobados por FIPS

Las herramientas de integridad de archivos usan hashes criptográficos para verificar que el contenido y los directorios del archivo no se hayan modificado. Estos hashes deben ser hashes criptográficos aprobados por FIPS 140-2.

AIDE: Verifica las LCA

Las LCA pueden proporcionar permisos más allá de los que se permiten a través del modo de archivo y deben ser verificadas por las herramientas de integridad de archivos.

AIDE: Verifica atributos EXT

Los atributos extendidos en los sistemas de archivos se usan para contener metadatos de archivos y datos arbitrarios con implicaciones de seguridad.

Configuración del kernel

Se aplicaron las siguientes modificaciones a la configuración del kernel en /etc/sysctl.

Inhabilita el reinicio Ctrl-Alt-Del

Un usuario que accedió de forma local y presiona Ctrl-Alt-Del, en la consola, puede reiniciar el sistema. Si se presiona accidentalmente, como podría ocurrir en el caso de un entorno del SO mixto, esto puede crear un riesgo de pérdida a corto plazo de la disponibilidad de los sistemas debido al reinicio no intencional.

Módulo de kernel del DCCP inhabilitado

El Protocolo de control de congestión de datagramas (DCCP) es un protocolo de capa de transporte relativamente nuevo, diseñado para admitir medios de transmisión y telefonía. La inhabilitación del DCCP protege al sistema contra la explotación de cualquier defecto en su implementación.

Módulo de kernel de almacenamiento USB inhabilitado

Los dispositivos de almacenamiento USB, como las memorias USB, se pueden usar para introducir software malicioso. Para evitar que se usen dispositivos de almacenamiento USB, configura el sistema de carga de módulos de kernel para evitar la carga automática del controlador de almacenamiento USB.

Aleatoriza espacio para direcciones virtuales

La aleatorización del diseño del espacio de direcciones (ASLR) hace que sea más difícil para un atacante predecir la ubicación del código de ataque que se incluyó en el espacio de direcciones de un proceso durante un intento de explotación. Además, una ASLR hace que sea más difícil para un atacante conocer la ubicación del código existente a fin de reutilizarlo mediante técnicas de programación orientada al retorno (ROP).

Inhabilita redireccionamientos IPv4

Los routers usan los mensajes de redireccionamiento ICMP para informar a los hosts que existe una ruta más directa para un destino en particular. Estos mensajes modifican la tabla de ruta del host y no se autentican. Un mensaje de redireccionamiento ICMP ilícito podría provocar un ataque de intermediario. Esta característica del protocolo IPv4 tiene pocos usos legítimos. Debe inhabilitarse, a menos que sea absolutamente obligatorio.

Inhabilita los paquetes IPv4 enrutados de origen

Los paquetes enrutados de origen permiten que la fuente del paquete sugiera que los routers reenvían el paquete a lo largo de una ruta diferente a la configurada en el router, que se puede usar para omitir las medidas de seguridad de la red. Este requisito se aplica solo al reenvío de tráfico enrutado de origen, como cuando está habilitado el reenvío de IPv4 y el sistema funciona como un router. Aceptar paquetes con enrutamiento de origen en el protocolo IPv4 tiene pocos usos legítimos. Debe inhabilitarse, a menos que sea absolutamente obligatorio.

Inhabilita el envío de redireccionamientos de IPv4

Los routers usan los mensajes de redireccionamiento ICMP para informar a los hosts que existe una ruta más directa para un destino en particular. Estos mensajes contienen información de la tabla de ruta del sistema, que puede revelar partes de la topología de la red. La capacidad de enviar redireccionamientos ICMP solo es adecuada para sistemas que actúan como routers.

Inhabilita la aceptación de redireccionamientos IPv4

Los routers usan los mensajes de redireccionamiento ICMP para informar a los hosts que existe una ruta más directa para un destino en particular. Estos mensajes modifican la tabla de ruta del host y no se autentican. Un mensaje de redireccionamiento ICMP ilícito podría provocar un ataque de intermediario. Esta característica del protocolo IPv4 tiene pocos usos legítimos. Debe inhabilitarse, a menos que sea absolutamente obligatorio.

Inhabilita la aceptación de paquetes enrutados por origen IPv4

Los paquetes enrutados de origen permiten que la fuente del paquete sugiera que los routers reenvían el paquete a lo largo de una ruta diferente a la configurada en el router, que se puede usar para omitir las medidas de seguridad de la red. Aceptar paquetes con enrutamiento de origen en el protocolo IPv4 tiene pocos usos legítimos. Debe inhabilitarse, a menos que sea legalmente necesario, como cuando el reenvío de IPv4 está habilitado y el sistema funciona legítimamente como un router.

Inhabilita el envío de paquetes de redireccionamiento de IPv4

Los routers usan los mensajes de redireccionamiento ICMP para informar a los hosts que existe una ruta más directa para un destino en particular. Estos mensajes contienen información de la tabla de ruta del sistema, que puede revelar partes de la topología de la red. La capacidad de enviar redireccionamientos ICMP solo es adecuada para sistemas que actúan como routers.

Inhabilita respuesta a paquetes de transmisión IPv4

La respuesta de ecos de transmisión (ICMP) facilita la asignación de red y proporciona un vector para ataques de amplificación. Ignorar solicitudes de eco de ICMP (pings) enviadas a direcciones de transmisión o de multidifusión hace que el sistema sea un poco más difícil de enumerar en la red.

Inhabilita la aceptación de paquetes enrutados por origen IPv6

Los paquetes enrutados de origen permiten que la fuente del paquete sugiera que los routers reenvían el paquete a lo largo de una ruta diferente a la configurada en el router, que se puede usar para omitir las medidas de seguridad de la red. Este requisito se aplica solo al reenvío de tráfico enrutado de origen, como cuando está habilitado el reenvío de IPv6 y el sistema funciona como un router. Aceptar paquetes con enrutamiento de origen en el protocolo IPv6 tiene pocos usos legítimos. Debe inhabilitarse, a menos que sea absolutamente obligatorio.

Servicios

Se implementaron los siguientes cambios en los parámetros de configuración del servicio.

Registro remoto de trabajos programados

El registro cron se puede usar para rastrear la ejecución correcta o incorrecta de los trabajos cron. También se puede usar para detectar intrusiones en el uso de la instalación cron por parte de usuarios no autorizados y maliciosos.

Inhabilita AutoFS

El daemon autofs activa y desactiva los sistemas de archivos, como los directorios de inicio del usuario compartidos a través de NFS, a pedido. Además, se puede usar autofs para controlar contenido multimedia extraíble y la configuración predeterminada proporciona el dispositivo cdrom como /misc/cd. La activación automática de los sistemas de archivos permite una introducción sencilla de dispositivos desconocidos, lo que facilita la actividad maliciosa.

Informes de OpenSCAP

El siguiente informe es la evaluación completa de cumplimiento de los perfiles de OpenSCAP XCCDF:

OSImageVersion: 1.16.8-gke.6-20200424-d7e16ac3fd

Como referencia, también está disponible aquí la evaluación del SO del nodo antes de la implementación del perfil de cumplimiento:

OP de GKE: Evaluación antes de la implementación del perfil de cumplimiento