In this article
Arquitectura de seguridad en la nube: segura desde el diseño
¿Qué es la arquitectura de seguridad en la nube?
La arquitectura de seguridad en la nube está conformada por las herramientas y prácticas que permiten diseñar y configurar una plataforma en la nube de forma segura. Los arquitectos de la nube pueden sentirse tentados a enfocarse en el rendimiento y agregar la seguridad después, pero adoptar una arquitectura de seguridad en la nube permite integrar la seguridad en las plataformas desde sus cimientos. Se basa en dos principios fundamentales: la responsabilidad compartida entre los proveedores de servicios en la nube y sus clientes, y la confianza cero.
Las principales plataformas en la nube, como Amazon Web Services (AWS), Google Cloud (GCP) y Microsoft Azure, cuentan con miles de profesionales de seguridad que trabajan día y noche para proteger su infraestructura de nube pública, pero no son las únicas responsables de proteger las implementaciones en la nube. Si bien los proveedores de servicios en la nube tienen cierto grado de responsabilidad para garantizar que los datos y las cargas de trabajo que se ejecutan en sus servidores estén protegidos, gran parte del riesgo relacionado con la computación en la nube debe ser gestionado por el cliente.
En el modelo tradicional de seguridad de datos, las organizaciones tenían el control total de su infraestructura de TI. La seguridad se centraba en reforzar el perímetro de la red, y se consideraba confiables a todos los usuarios y sistemas dentro de ella. Este enfoque deja de funcionar al trabajar en la nube y el problema se agrava en entornos híbridos y multinube. Este cambio hace necesaria una arquitectura de nube inherentemente segura.
En esta publicación explicaremos qué significa la arquitectura de seguridad en la nube y por qué es relevante para los desarrolladores nativos de la nube.
¿Por qué es importante la arquitectura de seguridad en la nube?
Una arquitectura de seguridad en la nube eficaz es importante porque permite a las organizaciones mantener una postura de seguridad sólida mientras avanzan con rapidez y agregan nuevas capacidades en la nube. Debido al ritmo acelerado de las técnicas de desarrollo modernas y a la complejidad de los entornos en la nube, no es viable esperar a que las aplicaciones estén en producción para protegerlas. Al aplicar las prácticas recomendadas de arquitectura de seguridad en la nube, las organizaciones pueden crear aplicaciones nativas de la nube de manera eficiente y, al mismo tiempo, mantener una postura de seguridad sólida.
Desafíos de la arquitectura de seguridad en la nube
Una arquitectura de seguridad de computación en la nube bien planificada debe tener en cuenta los siguientes desafíos:
Amenazas internas
Las organizaciones deben verificar y capacitar adecuadamente a los empleados y las partes interesadas que tienen acceso a los entornos en la nube antes de otorgarles acceso, y deben controlar estrictamente ese acceso. Los entornos en la nube pueden ser vulnerables a ataques de empleados malintencionados o a la negligencia de los empleados, que puede provocar el robo de credenciales o errores de configuración.
Compromiso del plano de control
El plano de control de la nube es el conjunto de API que un proveedor de servicios en la nube, como Amazon, Google o Microsoft, ofrece a los desarrolladores para que configuren y controlen los entornos en la nube con los que trabajan a diario. Cuando un hacker logra entrar en un entorno en la nube, lo que realmente busca son las claves de API que le permiten operar en el plano de control de las API del proveedor. Estas claves le permiten descubrir información sobre el entorno, moverse lateralmente, encontrar y extraer datos, y evadir la detección de las herramientas de seguridad.
Ataques DoS
Los ataques de denegación de servicio (DoS) amenazan la disponibilidad de los datos y las aplicaciones. Es posible que un atacante no pueda acceder a los datos ni modificarlos, pero si puede hacer que los sistemas o los datos no estén disponibles para ti o tus clientes, puede impedirte realizar operaciones comerciales esenciales.
Los ataques DoS pueden ser temporales o permanentes. Los ataques temporales de denegación de servicio distribuido (DDoS) ocurren cuando los atacantes saturan un sistema con solicitudes. Se pueden contrarrestar con políticas de cumplimiento de red. Los ataques DoS permanentes dañan el hardware y dejan los servidores inoperables, por lo que los técnicos deben reconstruir físicamente el sistema desde cero.
Control del cliente
Los datos y las cargas de trabajo que se ejecutan en servicios en la nube plantean desafíos de visibilidad y control. Los proveedores de servicios en la nube no siempre ofrecen información detallada sobre cómo aplicar controles en sus plataformas, por lo que es posible que los controles internos de los clientes no se traduzcan en controles en la nube. Esto puede dar lugar a un conjunto fragmentado de controles para dispositivos internos, redes y recursos en la nube, lo que puede reducir la visibilidad y aumentar el riesgo de una posible filtración o pérdida de datos.
Responsabilidad compartida en la arquitectura de seguridad en la nube
Los proveedores modernos de servicios en la nube trabajan con un modelo de responsabilidad compartida. Los proveedores y los clientes son responsables de los aspectos de la nube que les corresponden. Por lo general, los proveedores son responsables de la seguridad del backend, empezando por la seguridad física del centro de datos, mientras que los clientes son responsables del uso seguro de los servicios en la nube, empezando por los dispositivos de los usuarios y los controles de acceso.
Veamos cómo se distribuye la responsabilidad compartida en tres de los modelos de computación en la nube más comunes:
Software como servicio (SaaS) | Plataforma como servicio (PaaS) | Infraestructura como servicio (IaaS) |
|---|---|---|
El proveedor es responsable de todo, desde la seguridad de las aplicaciones hasta la infraestructura física, mientras que los clientes son responsables de proteger el acceso de los usuarios. | En este caso, el cliente también es responsable del acceso de los usuarios y de la seguridad de los datos, y además asume la responsabilidad por las aplicaciones que ejecuta en la plataforma del proveedor de servicios en la nube. El proveedor es responsable de proteger las capas que van desde los sistemas operativos hasta la infraestructura física. | Los proveedores son responsables de proteger la infraestructura y el middleware de virtualización que utilizan los clientes de IaaS. Los clientes son responsables de proteger las máquinas virtuales o los sistemas operativos, las aplicaciones, el tráfico y los datos. |
La mayoría de las empresas ahora usan varias nubes públicas para aprovechar las ventajas particulares de distintos proveedores de servicios en la nube, lo que implica una mayor responsabilidad de monitorear y proteger las aplicaciones y los datos en todas ellas.
¿Qué aspectos clave deben considerarse en la arquitectura de seguridad en la nube?
Algunos aspectos clave de una arquitectura de seguridad en la nube son la seguridad desde el diseño, la seguridad de las aplicaciones nativas de la nube, el enfoque shift left, la automatización, el cumplimiento en la nube, la visibilidad de la nube y la administración multinube.
Veamos cada uno en detalle:
Seguridad desde el diseño
Las consideraciones de seguridad se incorporan a la arquitectura de seguridad en la nube para evitar que se eludan accidentalmente debido a políticas mal configuradas. Por ejemplo, la administración de identidades debe centralizarse y se deben usar controles de acceso basados en roles para cada interacción con un recurso en la nube. Esto también puede ayudar a proteger contra el compromiso del plano de control.
Seguridad de las aplicaciones nativas de la nube
Una de las ventajas de implementar aplicaciones en la nube es la agilidad y la escalabilidad que ofrece. La arquitectura de seguridad en la nube debe garantizar que las herramientas y técnicas de seguridad no interfieran con las publicaciones ágiles ni generen obstáculos en el proceso de implementación. De lo contrario, los equipos de desarrollo y operaciones tendrán incentivos para omitir o pasar por alto los pasos de seguridad.
Shift left
Shift left es un enfoque moderno de seguridad de aplicaciones. En lugar de esperar a que las aplicaciones estén en producción, shift left integra las pruebas de seguridad lo antes posible en el proceso de desarrollo. Como más del 50 % de los profesionales de DevSecOps afirman que usan algún tipo de infraestructura como código (IaC) para implementar cargas de trabajo, es importante probar tanto las aplicaciones como la infraestructura lo antes posible y con la mayor frecuencia posible durante el desarrollo, en lugar de esperar a que la aplicación esté en producción.
Automatización
Las actualizaciones de seguridad, los controles y las configuraciones deben automatizarse mediante código para que los desarrolladores y los equipos de seguridad puedan detectar y responder automáticamente a las amenazas contra las aplicaciones nativas de la nube y los datos.
Cumplimiento en la nube
Los organismos reguladores están endureciendo las leyes relacionadas con los datos y los procesos en la nube. La arquitectura de seguridad en la nube debe incorporar las regulaciones gubernamentales y las normas del sector o de la organización en la arquitectura de la nube para garantizar que se cumplan las responsabilidades correspondientes.
Visibilidad de la nube
Las implementaciones híbridas y multinube presentan desafíos de visibilidad. A menudo, las soluciones de seguridad tradicionales no pueden monitorear y administrar la seguridad en toda la infraestructura basada en la nube, por lo que una arquitectura de seguridad en la nube eficaz debe incluir técnicas y tecnologías que permitan obtener visibilidad de las implementaciones híbridas o multinube.
Administración multinube
Las organizaciones utilizan cada vez más varios proveedores de servicios en la nube, cada uno con sus propios ajustes de configuración y herramientas de seguridad integradas. Administrar implementaciones multinube supone una carga adicional para los desarrolladores y los equipos de seguridad, que ya tienen mucho trabajo. Por eso, la arquitectura de seguridad en la nube debe ayudar a unificar la administración de las soluciones de seguridad en la nube de cada proveedor.
Cómo Snyk puede ayudar a proteger tus entornos en la nube
A menudo se habla de la nube como si fuera un centro de datos, pero en la práctica es software. Lo que antes era infraestructura ahora forma parte de las aplicaciones, lo que significa que proteger las aplicaciones en la nube requiere trasladar la responsabilidad de TI y operaciones a la seguridad de las aplicaciones. La seguridad nativa de la nube debe empezar con los desarrolladores para que puedan enfocarse en entregar software que cumpla los objetivos del negocio y, al mismo tiempo, garantizar que el código sea seguro. Snyk ofrece numerosas herramientas que ayudan a los desarrolladores a proteger la infraestructura y los contenedores donde se ejecutan sus aplicaciones.
Protege tus configuraciones desde el IDE hasta las nubes en ejecución.
Dales a los desarrolladores las herramientas para crear infraestructura en la nube de forma segura y corregir problemas desde el código fuente de IaC
Shift left y principios de DevSecOps
La plataforma de Snyk para la seguridad de aplicaciones nativas de la nube integra la seguridad de las aplicaciones, las plataformas y la infraestructura en el pipeline de desarrollo, con monitoreo continuo para detectar nuevas vulnerabilidades. Esta plataforma facilita las prácticas de DevSecOps, ya que elimina los engorrosos ciclos de revisión en los que los equipos de seguridad detectan errores en producción y vuelven a consultar a los equipos de desarrollo. Cuando la seguridad está integrada en el proceso de desarrollo desde el principio, los equipos de seguridad no tienen que pedir funciones adicionales ni auditorías a los desarrolladores después, porque saben que estos elementos se incorporan desde el primer día.
Snyk IaC
Snyk IaC elimina las revisiones manuales tediosas y propensas a errores, ya que permite a los desarrolladores proteger las configuraciones de infraestructura mientras las escriben e implementan. Incluye reglas integradas de políticas como código y permite crear reglas personalizadas con Open Policy Agent (OPA).
Seguridad de contenedores
Snyk Container permite a los desarrolladores proteger la capa de contenedores durante el desarrollo y en producción. Ayuda a eliminar vulnerabilidades con recomendaciones automatizadas de imágenes base y actualizaciones. La reciente alianza de Snyk con Sysdig amplía nuestra capacidad para analizar y corregir vulnerabilidades de contenedores en el entorno de ejecución.