Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?

Cada vez más usuarios están trasladando toda su infraestructura de TI a la nube pública. Sin embargo, si el control antivirus es insuficiente en la infraestructura del cliente, surgen graves riesgos cibernéticos. La práctica demuestra que hasta el 80% de los virus existentes viven perfectamente en un entorno virtual. En este post hablaremos de cómo proteger los recursos TI en la nube pública y de por qué los antivirus tradicionales no son del todo adecuados para estos fines.

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?

Para empezar, le contamos cómo llegamos a la idea de que las herramientas de protección antivirus habituales no son adecuadas para la nube pública y que se necesitan otros enfoques para proteger los recursos.

En primer lugar, los proveedores generalmente proporcionan las medidas necesarias para garantizar que sus plataformas en la nube estén protegidas a un alto nivel. Por ejemplo, en #CloudMTS analizamos todo el tráfico de la red, monitoreamos los registros de los sistemas de seguridad de nuestra nube y realizamos pentests periódicamente. Los segmentos de nube asignados a clientes individuales también deben protegerse de forma segura.

En segundo lugar, la opción clásica para combatir los riesgos cibernéticos pasa por instalar un antivirus y herramientas de gestión de antivirus en cada máquina virtual. Sin embargo, con una gran cantidad de máquinas virtuales, esta práctica puede resultar ineficaz y requerir cantidades significativas de recursos informáticos, lo que carga aún más la infraestructura del cliente y reduce el rendimiento general de la nube. Esto se ha convertido en un requisito previo clave para buscar nuevos enfoques para crear una protección antivirus eficaz para las máquinas virtuales de los clientes.

Además, la mayoría de las soluciones antivirus del mercado no están adaptadas para solucionar los problemas de protección de los recursos de TI en un entorno de nube pública. Por regla general, se trata de soluciones EPP (Endpoint Protection Platforms) de peso pesado que, además, no proporcionan la personalización necesaria en el lado del cliente del proveedor de la nube.

Resulta obvio que las soluciones antivirus tradicionales no son adecuadas para trabajar en la nube, ya que cargan seriamente la infraestructura virtual durante las actualizaciones y análisis, y además no tienen los niveles necesarios de configuración y administración basadas en roles. A continuación, analizaremos en detalle por qué la nube necesita nuevos enfoques de protección antivirus.

Qué debería poder hacer un antivirus en una nube pública

Entonces, prestemos atención a los detalles del trabajo en un entorno virtual:

Eficiencia de actualizaciones y escaneos masivos programados. Si un número significativo de máquinas virtuales que utilizan un antivirus tradicional inician una actualización al mismo tiempo, se producirá la llamada "tormenta" de actualizaciones en la nube. La potencia de un host ESXi que aloja varias máquinas virtuales puede no ser suficiente para manejar la avalancha de tareas similares que se ejecutan de forma predeterminada. Desde el punto de vista del proveedor de la nube, un problema de este tipo puede provocar cargas adicionales en varios hosts ESXi, lo que en última instancia provocará una caída en el rendimiento de la infraestructura virtual de la nube. Esto puede afectar, entre otras cosas, al rendimiento de las máquinas virtuales de otros clientes de la nube. Una situación similar puede surgir al iniciar un escaneo masivo: el procesamiento simultáneo por parte del sistema de disco de muchas solicitudes similares de diferentes usuarios afectará negativamente el rendimiento de toda la nube. Con un alto grado de probabilidad, una disminución en el rendimiento del sistema de almacenamiento afectará a todos los clientes. Cargas tan abruptas no agradan ni al proveedor ni a sus clientes, ya que afectan a los “vecinos” en la nube. Desde este punto de vista, los antivirus tradicionales pueden plantear un gran problema.

Cuarentena segura. Si se detecta en el sistema un archivo o documento potencialmente infectado con un virus, se envía a cuarentena. Por supuesto, un archivo infectado se puede eliminar inmediatamente, pero esto no suele ser aceptable para la mayoría de las empresas. Los antivirus empresariales corporativos que no están adaptados para funcionar en la nube del proveedor, por regla general, tienen una zona de cuarentena común: todos los objetos infectados caen en ella. Por ejemplo, los que se encuentran en los ordenadores de los usuarios de la empresa. Los clientes del proveedor de la nube “viven” en sus propios segmentos (o inquilinos). Estos segmentos son opacos y aislados: los clientes no se conocen entre sí y, por supuesto, no ven lo que otros alojan en la nube. Evidentemente, la cuarentena general, a la que accederán todos los usuarios de antivirus en la nube, podría incluir potencialmente un documento que contenga información confidencial o un secreto comercial. Esto es inaceptable para el proveedor y sus clientes. Por tanto, solo puede haber una solución: la cuarentena personal para cada cliente de su segmento, donde ni el proveedor ni otros clientes tienen acceso.

Políticas de seguridad individuales. Cada cliente en la nube es una empresa independiente, cuyo departamento de TI establece sus propias políticas de seguridad. Por ejemplo, los administradores definen reglas de análisis y programan análisis antivirus. En consecuencia, cada organización debe tener su propio centro de control para configurar políticas antivirus. Al mismo tiempo, la configuración especificada no debería afectar a otros clientes de la nube y el proveedor debería poder verificar que, por ejemplo, las actualizaciones de antivirus se realizan con normalidad para todas las máquinas virtuales del cliente.

Organización de facturación y licencias. El modelo de nube se caracteriza por la flexibilidad e implica pagar solo por la cantidad de recursos de TI que utilizó el cliente. Si surge una necesidad, por ejemplo debido a la estacionalidad, entonces la cantidad de recursos se puede aumentar o reducir rápidamente, todo ello en función de las necesidades actuales de potencia informática. Los antivirus tradicionales no son tan flexibles: por regla general, el cliente compra una licencia por un año para un número predeterminado de servidores o estaciones de trabajo. Los usuarios de la nube desconectan y conectan periódicamente máquinas virtuales adicionales según sus necesidades actuales; en consecuencia, las licencias de antivirus deben admitir el mismo modelo.

La segunda pregunta es qué cubrirá exactamente la licencia. Los antivirus tradicionales tienen licencia según la cantidad de servidores o estaciones de trabajo. Las licencias basadas en la cantidad de máquinas virtuales protegidas no son del todo adecuadas dentro del modelo de nube. El cliente puede crear cualquier número de máquinas virtuales que le resulten conveniente a partir de los recursos disponibles, por ejemplo, cinco o diez máquinas. Este número no es constante para la mayoría de los clientes; a nosotros, como proveedor, no nos es posible realizar un seguimiento de sus cambios. No existe ninguna posibilidad técnica de otorgar licencias por CPU: los clientes reciben procesadores virtuales (vCPU), que deben usarse para la concesión de licencias. Por lo tanto, el nuevo modelo de protección antivirus debería incluir la capacidad de que el cliente determine la cantidad requerida de vCPU para las cuales recibirá licencias antivirus.

Cumplimiento de la legislación. Un punto importante, ya que las soluciones utilizadas deben garantizar el cumplimiento de los requisitos del regulador. Por ejemplo, los “residentes” de la nube suelen trabajar con datos personales. En este caso, el proveedor debe tener un segmento de nube certificado independiente que cumpla plenamente con los requisitos de la Ley de Datos Personales. Entonces las empresas no necesitan "construir" de forma independiente todo el sistema para trabajar con datos personales: comprar equipos certificados, conectarlos y configurarlos y someterse a una certificación. Para la ciberprotección del ISPD de dichos clientes, el antivirus también debe cumplir con los requisitos de la legislación rusa y tener un certificado FSTEC.

Analizamos los criterios obligatorios que debe cumplir la protección antivirus en la nube pública. A continuación, compartiremos nuestra propia experiencia en la adaptación de una solución antivirus para que funcione en la nube del proveedor.

¿Cómo hacer amistad entre el antivirus y la nube?

Como ha demostrado nuestra experiencia, elegir una solución basada en la descripción y la documentación es una cosa, pero implementarla en la práctica en un entorno de nube que ya funciona es una tarea completamente diferente en términos de complejidad. Te contamos qué hicimos en la práctica y cómo adaptamos el antivirus para que funcione en la nube pública del proveedor. El proveedor de la solución antivirus fue Kaspersky, cuya cartera incluye soluciones de protección antivirus para entornos de nube. Nos decidimos por "Kaspersky Security for Virtualization" (Agente ligero).

Incluye una única consola Kaspersky Security Center. Agente ligero y máquinas virtuales de seguridad (SVM, Security Virtual Machine) y servidor de integración KSC.

Después de estudiar la arquitectura de la solución Kaspersky y realizar las primeras pruebas junto con los ingenieros del proveedor, surgió la pregunta sobre la integración del servicio en la nube. La primera implementación se llevó a cabo de forma conjunta en el sitio de la nube de Moscú. Y de eso nos dimos cuenta.

Para minimizar el tráfico de red, se decidió colocar un SVM en cada host ESXi y "vincular" el SVM a los hosts ESXi. En este caso, los agentes ligeros de las máquinas virtuales protegidas acceden al SVM del host ESXi exacto en el que se están ejecutando. Se seleccionó un inquilino administrativo independiente para el KSC principal. En consecuencia, las KSC subordinadas están ubicadas en los inquilinos de cada cliente individual y se dirigen a la KSC superior ubicada en el segmento de gestión. Este esquema le permite resolver rápidamente los problemas que surgen en los inquilinos de los clientes.

Además de los problemas con la mejora de los componentes de la solución antivirus en sí, nos enfrentamos a la tarea de organizar la interacción de la red mediante la creación de VxLAN adicionales. Y aunque la solución estaba originalmente destinada a clientes empresariales con nubes privadas, con la ayuda de los conocimientos de ingeniería y la flexibilidad tecnológica de NSX Edge pudimos resolver todos los problemas asociados con la separación de inquilinos y las licencias.

Trabajamos en estrecha colaboración con los ingenieros de Kaspersky. Por lo tanto, en el proceso de análisis de la arquitectura de la solución en términos de interacción de red entre los componentes del sistema, se encontró que, además del acceso de los agentes ligeros a SVM, también es necesaria la retroalimentación, de SVM a los agentes ligeros. Esta conectividad de red no es posible en un entorno multiinquilino debido a la posibilidad de configuraciones de red idénticas de máquinas virtuales en diferentes inquilinos de la nube. Por lo tanto, a petición nuestra, los colegas del proveedor reelaboraron el mecanismo de interacción de red entre el agente ligero y SVM en términos de eliminar la necesidad de conectividad de red desde SVM a los agentes ligeros.

Después de implementar y probar la solución en el sitio de la nube de Moscú, la replicamos en otros sitios, incluido el segmento de la nube certificada. El servicio ya está disponible en todas las regiones del país.

Arquitectura de una solución de seguridad de la información en el marco de un nuevo enfoque.

El esquema general de funcionamiento de una solución antivirus en un entorno de nube pública es el siguiente:

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?
Esquema de funcionamiento de una solución antivirus en un entorno de nube pública #CloudMTS

Describamos las características del funcionamiento de elementos individuales de la solución en la nube:

• Una consola única que permite a los clientes administrar centralmente el sistema de protección: ejecutar análisis, controlar actualizaciones y monitorear zonas de cuarentena. Es posible configurar políticas de seguridad individuales dentro de su segmento.

Cabe señalar que, aunque somos un proveedor de servicios, no interferimos con la configuración establecida por los clientes. Lo único que podemos hacer es restablecer las políticas de seguridad a las estándar si es necesaria una reconfiguración. Por ejemplo, esto puede ser necesario si el cliente los apretó accidentalmente o los debilitó significativamente. Una empresa siempre puede recibir un centro de control con políticas predeterminadas, que luego puede configurar de forma independiente. La desventaja de Kaspersky Security Center es que actualmente la plataforma sólo está disponible para el sistema operativo Microsoft. Aunque los agentes livianos pueden funcionar con máquinas Windows y Linux. Sin embargo, Kaspersky Lab promete que en un futuro próximo KSC funcionará bajo el sistema operativo Linux. Una de las funciones importantes del KSC es la capacidad de gestionar la cuarentena. Cada empresa cliente en nuestra nube tiene una personal. Este enfoque elimina situaciones en las que un documento infectado con un virus se vuelve públicamente visible accidentalmente, como podría suceder en el caso de un antivirus corporativo clásico con cuarentena general.

• Agentes leves. Como parte del nuevo modelo, se instala un agente ligero de Kaspersky Security en cada máquina virtual. Esto elimina la necesidad de almacenar la base de datos antivirus en cada VM, lo que reduce la cantidad de espacio en disco necesario. El servicio está integrado con la infraestructura de la nube y funciona a través de SVM, lo que aumenta la densidad de máquinas virtuales en el host ESXi y el rendimiento de todo el sistema de la nube. El agente ligero crea una cola de tareas para cada máquina virtual: verificar el sistema de archivos, la memoria, etc. Pero el SVM es responsable de realizar estas operaciones, de las que hablaremos más adelante. El agente también funciona como firewall, controla las políticas de seguridad, envía archivos infectados a cuarentena y monitorea el "estado" general del sistema operativo en el que está instalado. Todo esto se puede gestionar mediante la consola única ya mencionada.

• Máquina Virtual de Seguridad. Todas las tareas que consumen muchos recursos (actualizaciones de bases de datos antivirus, análisis programados) son manejadas por una máquina virtual de seguridad (SVM) separada. Ella es responsable del funcionamiento de un motor antivirus completo y de sus bases de datos. La infraestructura de TI de una empresa puede incluir varias SVM. Este enfoque aumenta la confiabilidad del sistema: si una máquina falla y no responde durante treinta segundos, los agentes automáticamente comienzan a buscar otra.

• Servidor de integración KSC. Uno de los componentes del KSC principal, que asigna sus SVM a agentes ligeros de acuerdo con el algoritmo especificado en su configuración y también controla la disponibilidad de los SVM. Por lo tanto, este módulo de software proporciona equilibrio de carga en todas las SVM de la infraestructura de la nube.

Algoritmo para trabajar en la nube: reducir la carga en la infraestructura

En general, el algoritmo antivirus se puede representar de la siguiente manera. El agente accede al archivo en la máquina virtual y lo verifica. El resultado de la verificación se almacena en una base de datos de veredictos SVM centralizada común (llamada caché compartida), donde cada entrada identifica una muestra de archivo única. Este enfoque le permite garantizar que el mismo archivo no se analice varias veces seguidas (por ejemplo, si se abrió en diferentes máquinas virtuales). El archivo se vuelve a escanear solo si se le han realizado cambios o el escaneo se ha iniciado manualmente.

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?
Implementación de una solución antivirus en la nube del proveedor.

La imagen muestra un diagrama general de la implementación de la solución en la nube. El Kaspersky Security Center principal se implementa en la zona de control de la nube y se implementa un SVM individual en cada host ESXi utilizando el servidor de integración KSC (cada host ESXi tiene su propio SVM adjunto con configuraciones especiales en VMware vCenter Server). Los clientes trabajan en sus propios segmentos de nube, donde se ubican las máquinas virtuales con agentes. Se gestionan a través de servidores KSC individuales subordinados al KSC principal. Si es necesario proteger una pequeña cantidad de máquinas virtuales (hasta 5), ​​se puede proporcionar al cliente acceso a la consola virtual de un servidor KSC dedicado especial. La interacción de red entre los KSC de cliente y el KSC principal, así como los agentes ligeros y SVM, se lleva a cabo mediante NAT a través de enrutadores virtuales de cliente EdgeGW.

Según nuestras estimaciones y los resultados de las pruebas realizadas por colegas del proveedor, Light Agent reduce la carga en la infraestructura virtual de los clientes en aproximadamente un 25% (en comparación con un sistema que utiliza software antivirus tradicional). En particular, el antivirus estándar Kaspersky Endpoint Security (KES) para entornos físicos consume casi el doble de tiempo de CPU del servidor (2,95%) que una solución de virtualización ligera basada en agentes (1,67%).

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?
Cuadro comparativo de carga de CPU

Una situación similar se observa con la frecuencia de accesos de escritura al disco: para un antivirus clásico es 1011 IOPS, para un antivirus en la nube es 671 IOPS.

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?
Gráfico comparativo de la tasa de acceso al disco

El beneficio de rendimiento le permite mantener la estabilidad de la infraestructura y utilizar la potencia informática de manera más eficiente. Al adaptarse para trabajar en un entorno de nube pública, la solución no reduce el rendimiento de la nube: verifica archivos y descarga actualizaciones de manera centralizada, distribuyendo la carga. Esto significa que, por un lado, las amenazas relevantes para la infraestructura de la nube no pasarán desapercibidas y, por otro lado, los requisitos de recursos para las máquinas virtuales se reducirán en una media del 25 % en comparación con un antivirus tradicional.

En términos de funcionalidad, ambas soluciones son muy similares entre sí: a continuación se muestra una tabla comparativa. Sin embargo, en la nube, como muestran los resultados de las pruebas anteriores, sigue siendo óptimo utilizar una solución para entornos virtuales.

Por qué los antivirus tradicionales no son adecuados para las nubes públicas. ¿Entonces qué debo hacer?

Sobre las tarifas en el marco del nuevo enfoque. Decidimos utilizar un modelo que nos permite obtener licencias en función de la cantidad de vCPU. Esto significa que la cantidad de licencias será igual a la cantidad de vCPU. Puedes probar tu antivirus dejando una solicitud online.

En el próximo artículo sobre temas de nube hablaremos de la evolución de los WAF en la nube y qué es mejor elegir: hardware, software o nube.

El texto fue preparado por empleados del proveedor de nube #CloudMTS: Denis Myagkov, arquitecto líder y Alexey Afanasyev, gerente de desarrollo de productos de seguridad de la información.

Fuente: habr.com

Añadir un comentario