
[15/11/2019] Otro día, otra violación de datos debido a los sistemas basados en la nube mal configurados. La infame violación de Capital One es el ejemplo reciente más destacado. La violación se debió a un firewall de aplicación web de código abierto (WAF) mal configurado, que la compañía de servicios financieros utilizó en sus operaciones alojadas en Amazon Web Services (AWS).
Aparentemente, se le permitió al WAF mal configurado enumerar todos los archivos de cualquiera de los depósitos de datos de AWS y leer el contenido de cada uno. La configuración incorrecta le permitió al intruso engañar al firewall para que transmita solicitudes a un recurso de fondo clave en AWS, según el blog Krebs On Security. El recurso "es responsable de entregar información temporal a un servidor en la nube, incluidas las credenciales actuales enviadas desde un servicio de seguridad para acceder a cualquier recurso en la nube al que ese servidor tenga acceso,” explicó el blog.
La violación afectó a unos 100 millones de ciudadanos estadounidenses, con aproximadamente 140 mil números de Seguro Social y 80 mil números de cuentas bancarias comprometidas, y eventualmente podría costarle a Capital One hasta 150 millones de dólares.
Aquí se le echa un vistazo a la razón por la que configuración incorrecta sigue siendo un desafío común respecto a los servicios en la nube, seguido de siete controles de seguridad en la nube que debería utilizar para minimizar los riesgos.
La configuración incorrecta es un problema grave que probablemente empeore
Entonces, ¿qué tan grave es el problema de los sistemas en la nube mal configurados? Considere esto: para el 2022, al menos el 95% de las fallas de seguridad en la nube serán culpa del cliente, estima Gartner, citando como razones a las configuraciones incorrectas y la mala gestión.
"El desafío no está en la seguridad de la nube en sí, sino en las políticas y tecnologías para la seguridad y el control de la tecnología”, según Gartner. "En casi todos los casos, es el usuario, no el proveedor de la nube, quien falla al administrar los controles utilizados para proteger los datos de una organización”, y agrega que "los CIO deben cambiar su línea de preguntas de '¿Es segura la nube?' a '¿Estoy usando la nube de forma segura?'”
Varios factores juegan un rol en cuanto a crear y exacerbar el problema de configuración incorrecta.
Conceptos erróneos y suposiciones. Con demasiada frecuencia se asume que el proveedor de servicios en la nube se encarga de proteger el entorno de la nube. Esa es solo una parte de la historia. Los proveedores de infraestructura como servicio (IaaS) como Amazon, Microsoft y Google se encargan de la seguridad de sus centros de datos físicos y el hardware del servidor en el que se ejecutan las máquinas virtuales. El cliente se encarga de proteger sus máquinas virtuales y aplicaciones. Los proveedores de la nube ofrecen servicios y herramientas de seguridad para asegurar las cargas de trabajo de los clientes, pero el administrador tiene que implementar las defensas necesarias. No importa qué tipo de defensas de seguridad ofrezca el proveedor de la nube si los clientes no protegen sus propias redes, usuarios y aplicaciones.
Una desconexión entre percepción y realidad. Se han producido muchas violaciones en entornos IaaS que no se ajustan al método familiar de "infiltrarse con malware”, señala una encuesta de McAfee realizada en septiembre del 2019 a mil empresas en 11 países. En la mayoría de los casos, la violación "es un ataque oportunista a los datos que quedan abiertos por errores en la configuración del entorno de la nube”.
Junto con su encuesta, McAfee examinó los datos de eventos agregados y anónimos de sus clientes en millones de usuarios de la nube y miles de millones de eventos. Los datos muestran una desconexión preocupante entre las configuraciones erróneas que conocen las empresas que utilizan entornos IaaS, y las que escapan de su atención. Los encuestados dicen que están al tanto de 37 incidentes de configuración incorrecta en promedio por mes, pero los datos de los clientes de McAfee muestran que esas empresas realmente experimentaron alrededor de 3.500 incidentes de configuración incorrecta por mes -un aumento interanual del 54%. En otras palabras, el 99% de las configuraciones erróneas en entornos empresariales IaaS pasan desapercibidas, según McAfee.
Muchas herramientas para identificar y explotar servicios en la nube mal configurados. De acuerdo con el Informe sobre las amenazas para la seguridad del Internet 2019 de Symantec, en el 2018 "los buckets S3 (AWS) surgieron como un talón de Aquiles para las organizaciones, con más de 70 millones de registros robados o filtrados como resultado de una mala configuración. Existen numerosas herramientas ampliamente disponibles que permiten a los atacantes potenciales identificar recursos de la nube mal configurados en Internet. A menos que las organizaciones tomen medidas para proteger adecuadamente sus recursos en la nube, como seguir los consejos proporcionados por Amazon para proteger los buckets S3, están permaneciendo abiertos a ataques”.
Entornos de TI empresariales cada vez más complejos. Según McAfee, la creciente adopción de entornos multi-cloud entre las empresas, junto con la completa falta de conocimiento de todos los servicios de la nube en uso en una empresa, está exacerbando el problema de la configuración incorrecta. En su estudio reciente, el 76% de las empresas informaron tener un entorno multi-cloud, pero un examen de los datos de los clientes encontró que en realidad el 92% de esos entornos son multi-cloud, un aumento del 18% año tras año.
Si bien los entornos multi-cloud tienen ventajas, también pueden volverse complicados de administrar, gestionar y controlar. "Los profesionales de seguridad responsables de asegurar los datos en las plataformas IaaS están constantemente poniéndose al día, y no cuentan con una forma automatizada de monitorear y corregir automáticamente las configuraciones erróneas en todos los servicios en la nube”, señala Dan Flaherty, director de marketing de productos de McAfee.
Además, la competencia acalorada en el creciente mercado de IaaS, significa que Amazon, Microsoft y Google están agregando furiosamente nuevas características a sus respectivas ofertas. "Solo AWS ha agregado alrededor de 1.800 funciones este año, en comparación con las 28 características del primer año en que se lanzó”, comenta John Yeoh, vicepresidente global de investigación de la Cloud Security Alliance. Por lo tanto, es un desafío para los profesionales de la seguridad mantenerse al día con el rápido ritmo de las nuevas características y funciones, lo que a su vez puede conducir a configuraciones incorrectas. "En un entorno complejo multi-cloud, uno necesita un experto para cada plataforma o servicio que esté utilizando, para garantizar que se apliquen las medidas de seguridad adecuadas”, asegura Yeoh.
Además, los recientes avances en la nube, como las aplicaciones y arquitecturas sin servidor, las cargas de trabajo y los servicios en contenedores de Kubernetes, y el mayor uso de interfaces de programación de aplicaciones (APIs) que vinculan varios servicios en la nube pueden aumentar el potencial de configuraciones erróneas si no se toman precauciones y no se monitorean y ajustan los privilegios de acceso constantemente, señala Balaji Parimi, CEO de CloudKnox Security. "La gente recién comienza a comprender los peligros de estas nuevas tecnologías y tendencias en la nube”, agrega. "Con demasiada frecuencia, les aplican a estas nuevas tecnologías metodologías de seguridad de hace décadas basadas en roles estáticos y suposiciones sobre los privilegios de acceso”.
En conclusión: los entornos de TI cada vez más complejos hacen que sea más difícil implementar controles de seguridad simples en todo el entorno que podrían ayudar a identificar y prevenir configuraciones incorrectas, afirma Yeoh.
Controles de seguridad
Los siguientes son siete controles de seguridad en la nube que usted debería usar.
1. Conocer el nivel de responsabilidad: No todos los servicios en la nube son iguales, y el nivel de responsabilidad varía. Los proveedores de software como servicio (SaaS) se aseguran de que sus aplicaciones estén protegidas y que los datos se transmitan y almacenen de forma segura, pero ese no es siempre el caso con los entornos IaaS. Por ejemplo, una empresa tiene total responsabilidad sobre sus instancias de AWS Elastic Compute Cloud (EC2), Amazon EBS y Amazon Virtual Private Cloud (VPC), incluida la configuración del sistema operativo, la administración de aplicaciones y la protección de datos.
Por el contrario, Amazon mantiene el sistema operativo y las aplicaciones para S3, y la empresa es responsable de administrar los datos, el control de acceso y las políticas de identidad. Amazon proporciona las herramientas para cifrar los datos para S3, pero depende de la organización habilitar la protección cuando ingresa y sale del servidor.
Verifique con sus proveedores de IaaS para saber quién está a cargo de cada control de seguridad en la nube.
2. Controlar quién tiene acceso: Las empresas luchan por controlar quién tiene acceso a sus servicios en la nube. Por ejemplo, más de la mitad (51%) de las organizaciones han expuesto públicamente al menos un servicio de almacenamiento en la nube por accidente, como las unidades de almacenamiento AWS S3, según una investigación llevada a cabo en mayo del 2018 por el equipo de Cloud Security Intelligence (CSI) de RedLock. (Ahora RedLock es parte de Palo Alto Networks.) Esto ocurre a pesar de las advertencias de Amazon y otros proveedores de la nube para evitar permitir que los contenidos de la unidad de almacenamiento sean accesibles para cualquier persona con conexión a Internet.
En términos generales, solo los equilibradores de carga y los hosts de bastióndeben estar expuestos a Internet. Muchos administradores habilitan por error los permisos globales en los servidores al usar 0.0.0.0/0 en las subredes públicas. La conexión se deja abierta, dándole a cada máquina la capacidad de conectarse.
Otro error común es permitir conexiones Secure Shell (SSH) directamente desde Internet, lo que significa que cualquiera que pueda descubrir la ubicación del servidor, puede pasar por alto el firewall y acceder directamente a los datos. En el 2019, el equipo de investigación de amenazas de la Unidad 42 de Palo Alto Networks buscó servicios expuestos en la nube pública. De los hosts y servicios expuestos que encontró, el 32% tenía servicios SSH abiertos. "Aunque SSH es uno de los protocolos más seguros, todavía es demasiado arriesgado exponer este poderoso servicio a todo el Internet,” señala el informe. "Cualquier configuración incorrecta o credenciales débiles/filtrados pueden resultar en un host comprometido”.
Todos los principales proveedores de la nube ofrecen herramientas de identidad y control de acceso; úselas. Sepa quién tiene acceso a qué datos y cuándo. Al crear políticas de identidad y control de acceso, otorgue el conjunto mínimo de privilegios necesarios y otorgue temporalmente permisos adicionales según sea necesario. Configure grupos de seguridad para tener el enfoque más estrecho posible; use identificaciones de referencia para los grupos de seguridad cuando sea posible. Considere herramientas como CloudKnox que le permiten configurar controles de acceso basados en datos de actividad del usuario.
3. Proteger los datos: Otro error común es dejar los datos sin cifrar en la nube. La información del votante y los archivos confidenciales del Pentágono han sido expuestos, porque los datos no estaban encriptados y los servidores eran accesibles para terceros no autorizados. Almacenar datos confidenciales en la nube sin implementar controles apropiados para evitar el acceso a un servidor y proteger los datos, es irresponsable y peligroso.
Siempre que sea posible, mantenga el control de las claves de cifrado. Si bien es posible proporcionar acceso a las claves a los proveedores de servicios en la nube, la responsabilidad de los datos recae en la organización.
Incluso cuando los proveedores de la nube ofrecen herramientas de cifrado y servicios de administración, muchas empresas no lo implementan. El cifrado es a prueba de fallas: incluso si falla una configuración de seguridad y los datos caen en manos de una parte no autorizada, los datos no se pueden usar.
4. Asegurar las credenciales: Como mostró la violación de OneLogin en el 2017, no es raro que se expongan las claves de acceso de AWS. Pueden estar expuestas en sus sitios web públicos, repositorios de código fuente, paneles de Kubernetes desprotegidos y otros foros similares. Debe tratar las claves de acceso de AWS como las joyas más sensibles de la corona y educar a los desarrolladores para evitar filtrar esas claves en foros públicos.
Cree claves únicas para cada servicio externo, y restrinja el acceso siguiendo el principio de privilegio mínimo. Asegúrese de que las claves no tengan permisos amplios. En las manos equivocadas, pueden usarse para acceder a recursos y datos confidenciales. Cree roles de IAM para asignar privilegios específicos, como realizar llamadas a la API.
Asegúrese de rotar regularmente las claves para evitar darle tiempo a los atacantes para interceptar claves comprometidas e infiltrarse en entornos de nube como usuarios privilegiados.
No use la cuenta de usuario root, ni siquiera para tareas administrativas. Use el usuario root para crear un nuevo usuario con privilegios asignados. Bloquee la cuenta root (quizás agregando autenticación multifactor [MFA]) y úsela solo para tareas específicas de administración de cuentas y servicios. Para todo lo demás, bríndeles a los usuarios los permisos adecuados.
Verifique las cuentas de usuario para encontrar aquellas que no se están utilizando y luego desactívelas. Si nadie está usando esas cuentas, no hay razón para darles a los atacantes posibles caminos para comprometer.
5. La higiene de seguridad sigue siendo importante: La defensa en profundidad es particularmente importante al asegurar entornos en la nube porque garantiza que incluso si falla un control, otras funciones de seguridad pueden mantener la aplicación, la red y los datos seguros.
MFA proporciona una capa adicional de protección además del nombre de usuario y la contraseña, lo que dificulta la entrada de los atacantes. MFA debe estar habilitado para restringir el acceso a las consolas de administración, paneles y cuentas privilegiadas.
6. Mejorar la visibilidad: Todos los principales proveedores de la nube ofrecen cierto nivel de herramientas de registro, así que asegúrese de activar el registro y la supervisión de seguridad para ver intentos de acceso no autorizados y otros problemas. Por ejemplo, Amazon proporciona CloudTrail para auditar entornos de AWS, pero muchas organizaciones no activan este servicio. Cuando está habilitado, CloudTrail mantiene un historial de todas las llamadas a la API de AWS, incluida la identidad de la persona que llama, la hora de la llamada, la dirección IP de origen de la persona que llama, los parámetros de solicitud y los elementos de respuesta devueltos por el servicio de AWS. También se puede utilizar para el seguimiento de cambios, gestión de recursos, análisis de seguridad y auditorías de cumplimiento.
7. Adoptar un enfoque de seguridad shift-left: El movimiento shift-left aboga por incorporar consideraciones de seguridad temprano en el proceso de desarrollo, en lugar de agregar seguridad en las etapas finales del desarrollo. "Las empresas no solo deben monitorear lo que tienen en las plataformas IaaS, sino que deben verificar todo el código que ingresa en la plataforma antes de que entre en funcionamiento”, señala Flaherty de McAfee. "Con shift-left, uno audita y detecta posibles configuraciones erróneas antes de que se conviertan en un problema”. Busque herramientas de seguridad que se integren con Jenkins, Kubernetes y otros para automatizar el proceso de auditoría y corrección.
Sin embargo, shift-left no es suficiente, señala Sam Bisbee, CSO de Threat Stack. "Sí, debe escanear el código y realizar comprobaciones de configuración antes de entrar en producción, pero con demasiada frecuencia las personas se olvidan de verificar que las cargas de trabajo cumplen una vez puestas en producción”, comenta Bisbee. "Si escaneo y luego despliego mi código, puede estar bien según lo que sabía en ese momento. Pero las cargas de trabajo permanecen en producción durante meses y años, se descubren nuevas vulnerabilidades y, con el tiempo, aumenta el riesgo en su código. Si no monitorea continuamente, no estará protegido”.
Comprenda su infraestructura
En lugar de siempre buscar amenazas conocidas, como muchos profesionales de ciberseguridad han sido capacitados para hacer, también debe esforzarse por comprender la infraestructura completa de su empresa y lo que está llevándose a cabo en ella, aconseja Bisbee.
Es cierto que eso puede ser un desafío en los entornos multi-cloud cada vez más complejos actuales. "Pero es mucho más fácil entender cómo debe comportarse algo y luego notar cuándo cambia, que constantemente esperar a que aparezca el intruso para actuar”. Si tiene una imagen completa de su entorno y sabe qué esperar, puede detectar de manera más eficaz las amenazas, como las configuraciones incorrectas, y remediar los riesgos de manera proactiva. En última instancia, la seguridad se trata de la visibilidad, no del control”.
Fahmida Y. Rashid, CSO (EE.UU.)