Avishag Daniely, GuardiCore.
Avishag Daniely Directora de gestión de producto GuardiCore

Estrategias de seguridad en la nube

Seguridad en la nube.

La adopción de la nube ofrece muchas ventajas a los departamentos de TI empresariales, pero también presenta nuevos retos de seguridad. Cuando una empresa pone su TI en manos de un tercero, le cede parte de sus responsabilidades de seguridad a su proveedor de la nube, lo que puede dar lugar a conceptos erróneos sobre el papel que desempeñan los usuarios de la nube pública en la seguridad de sus aplicaciones. En consecuencia, los proveedores de la nube utilizan un modelo de responsabilidad compartida para aclarar las obligaciones de seguridad de cada parte.

Los proveedores de la nube hacen todo lo posible para garantizar que proporcionan una plataforma segura para que los clientes desarrollen y alojen sus aplicaciones, pero los clientes siguen teniendo la obligación de asegurar sus propias implementaciones en la plataforma elegida. Un modelo de responsabilidad de seguridad compartida es un marco utilizado por los proveedores de la nube para ayudar a los clientes a comprender sus obligaciones al utilizar sus servicios. Algunos controles son responsabilidad exclusiva del proveedor de la nube, mientras que otros son completa responsabilidad del cliente. La responsabilidad de muchos controles depende del tipo de servicio de nube (IaaS, PaaS o SaaS) que utilice el cliente. Así, a mayor control delegado en el cliente, mayor grado de responsabilidad sobre la seguridad. 

Tanto AWS como Microsoft Azure y Google Cloud proporcionan algún modelo de responsabilidad compartida en el que el cliente es responsable de la protección de sus cargas de trabajo.

Según Gartner, «las cargas de trabajo de los servidores en centros de datos híbridos que abarcan nubes privadas y públicas requieren una estrategia de protección diferente a la de los dispositivos orientados al usuario final». Esto se debe a la naturaleza flexible de las aplicaciones en la nube y a la incompatibilidad de los agentes de ejecución diseñados para servidores locales. 

Los controles de protección de la carga de trabajo en la nube recomendados por Gartner no se proporcionan en los modelos de seguridad compartida de AWS, Azure o Google Cloud Platform. El diseño real de la aplicación de los controles centrales de protección de la carga de trabajo es responsabilidad de la empresa.

Estrategias de seguridad

  • Aislamiento de recursos: la seguridad se optimiza cuando se diseña en profundidad. Separar los recursos en secciones individualmente comprobables y asegurables ayuda a reducir los vectores de ataque y las vulnerabilidades.
  • Aislamiento de redes y aplicaciones: la segmentación de aplicaciones en la capa de red es una práctica de seguridad, ya que la utilización de listas de control de acceso a la red y los grupos de seguridad permiten un control granular de activos y reducen la superficie de ataque. Sin embargo, los flujos de datos entre componentes siempre deben grabarse y analizarse para detectar actividades sospechosas, incluidas las conexiones no autorizadas entre aplicaciones, como los ataques man-in-the-middle o las anomalías de red (ataques de denegación de servicio, virus, explotación de vulnerabilidades), que podrían ser indicadores de una brecha.
  • Seguridad de contenedores: los contenedores proporcionan virtualización y aislamiento a nivel de servicio. Reducen aún más los vectores de ataque al exponer solo el servicio requerido. Los orquestadores como Kubernetes, Mesos o Docker Swarm proporcionan los medios para aislar todavía más las cargas de trabajo a través de permisos. También permiten una alta disponibilidad a través de la programación y distribuyen eficazmente la carga entre los masters. Además posibilitan un control más preciso en los tipos de carga de trabajo entre los servicios de contenedores.

Hay ofertas nativas en nube que coinciden con el código abierto de Kubernetes, tal como Amazon Elastic Container Service, Amazon EKS, Azure Container Service o Google Kubernetes Engine. Las ofertas de nube nativa aprovechan el mismo modelo de código abierto de Kubernetes, pero abstraen algunos (ECS, EKS, AKS) a casi todos (AWS Fargate, Azure Container Instances) de la gestión de la infraestructura. La elección de estos modelos requiere un cierto bloqueo del proveedor de la nube, pero a cambio reduce la sobrecarga de gestión y los posibles errores de configuración.

  • Microsegmentación: la reducción del acoplamiento de aplicaciones mediante funciones individuales por microservicio proporciona beneficios adicionales. Con la microsegmentación, cada aplicación se convierte en un componente interdependiente. Las aplicaciones de microservicio encajan perfectamente en redes y contenedores segmentados. La utilización de ambos diseños asegura que el modelo pueda ser flexible con la carga y el cambio de entorno, como por ejemplo durante un aumento repentino o un desastre.

Por último, la microsegmentación reduce la exposición. Si un solo servicio está comprometido, un atacante tiene vectores muy limitados para invadir aún más la arquitectura total. Esto también permite una resolución más rápida, ya que los recursos solo se ven afectados de forma limitada por los ataques a otros recursos.

  • Cifrado de datos: los tres proveedores líderes de la nube soportan el cifrado del lado del servidor y del lado del cliente. En la encriptación del lado del servidor el proveedor cifra los datos de un cliente en su nombre después de recibirlos, mientras que en la encriptación del lado del cliente es este el que cifra sus datos antes de transferirlos a su servicio en la nube. Azure, GCP y AWS proporcionan la capacidad de cifrar volúmenes de datos en los servidores, mientras que el uso de cifrado en tránsito requiere el diseño de la integración de certificados en servicios que utilizan protocolos seguros, como TLS o SSL.
  • Actualizaciones y parches regulares: como usuario de IaaS, el cliente asume toda la responsabilidad de mantener actualizado cada SO del host. Sin embargo, puede reducir su carga de seguridad utilizando uno o más de los servicios totalmente gestionados de su proveedor de la nube. Por ejemplo, podría aprovechar las opciones de database as a service para alojar sus bases de datos relacionales. Las empresas que utilizan hosts de servidores deben aprovechar la gestión de parches AWS cuando sea posible.
  • Herramientas DevOps: los principales proveedores de la nube ofrecen sus propios servicios internos, como AWS CloudFormation, Azure ARM Templates y Google Cloud Deployment Manager. Si las aplicaciones se alojan en un entorno híbrido, es importante buscar soluciones de código abierto y de terceros que funcionen tanto en la nube pública como en la infraestructura local. Además, el uso de cualquiera de estas tres herramientas probablemente implique bloqueo con el proveedor de la nube. No obstante, no son propicios para la gestión multinube o, si es necesario, para la migración.
  • Monitorización de la carga de trabajo: una variedad de diferentes herramientas de monitorización está disponible para el cliente a medida que asumen su papel en un modelo de responsabilidad compartida, como las soluciones de monitoreo y gestión de inventario, servicios de control de aplicaciones y de costes o las plataformas de protección de cargas de trabajo en la nube.
  • Defensas tradicionales: las herramientas de seguridad tradicionales siguen teniendo un papel que jugar, pero el diferente entorno de aplicación que supone la nube implica que deben implementarse de una manera nueva, lo que puede requerir la creación de scripts o la automatización para mantener una visibilidad completa sobre una compleja serie de elementos móviles.

Conclusión

El nuevo paisaje de la nube de microservicios distribuidos e infraestructura dinámica ha desplazado el énfasis de la prevención de intrusiones desde el perímetro exterior hacia la cargas de trabajo individuales. Esto requiere nuevas herramientas de seguridad capaces de monitorizar entornos segmentados y el tráfico de red entre ellos.

Para utilizar las herramientas de seguridad de forma eficaz, los clientes también necesitan entender sus responsabilidades compartidas en la nube.

Al mismo tiempo, las cargas de trabajo de TI son cada vez más móviles, lo que permite elegir dónde alojar las aplicaciones en función del rendimiento, el coste y los requisitos de cumplimiento. 

Como resultado se necesitan herramientas con capacidades híbridas y multinube para garantizar una visibilidad completa en todos los entornos. Pero para utilizar las herramientas de seguridad de forma eficaz, los clientes también necesitan entender sus responsabilidades compartidas en la nube, ya que este conocimiento podría marcar la diferencia más importante entre un entorno informático seguro y las consecuencias potencialmente devastadoras de un ataque malicioso.