3 grandes vulnerabilidades de Amazon S3 que quizá estés pasando por alto
21 de mayo de 2020
0 minutos de lecturaNota del editor
Este blog se publicó originalmente en fugue.co. Fugue se unió a Snyk en 2022 y es un componente clave de Snyk IaC.
Cuando ocurre una filtración de datos relacionada con Amazon Web Services (AWS), lo más común es que esté involucrado el servicio de almacenamiento de objetos Amazon S3. Es un servicio muy popular. Lanzado en 2006, cuando pocas personas sabían qué era la nube, S3 es altamente escalable, confiable y fácil de usar. Sin embargo, lograr que la seguridad de S3 sea adecuada —y asegurarse de que siga siéndolo— continúa siendo un desafío para muchos clientes de AWS.
Como cabría esperar de un popular servicio en la nube que lleva casi una década y media en el mercado, S3 ha cambiado numerosas veces a medida que se agregan más y más funciones. Con el tiempo, las nuevas funcionalidades de S3 también han generado capas de seguridad más complejas que deben considerarse en la administración de la postura de seguridad en la nube (CSPM).
Antes de profundizar en las capas de seguridad de S3 en nuestra próxima Cloud Security Masterclass (regístrate aquí), pensamos que sería útil revisar rápidamente tres formas comunes en las que los clientes de AWS ponen en riesgo sus datos de S3 sin darse cuenta.
Vulnerabilidad n.º 1: Permisos de lista en recursos de cómputo
Cuando un atacante obtiene acceso a tu entorno en la nube, lo primero que quiere hacer es tener visibilidad para ver si hay algo que valga la pena robar. Por suerte para ellos, los clientes de AWS suelen usar permisos de lista en sus instancias EC2 o contenedores que, según los permisos de lista configurados, pueden permitirle al atacante ver qué otros recursos de AWS hay en la cuenta y qué roles de IAM puede asumir para acceder a ellos.
Hay pocas razones para usar permisos de lista en instancias EC2, y deberías aplicar una política que los prohíba.
Vulnerabilidad n.º 2: Depender demasiado de IAM para evitar el robo de datos
El servicio AWS Identity and Access Management (IAM) debe considerarse un recurso crítico para la seguridad de todos los entornos de AWS. Debes prestar mucha atención a las configuraciones de IAM y recibir notificaciones cada vez que cambien.
Dicho esto, aunque configures de forma segura los recursos de IAM aplicando el principio de privilegio mínimo, los actores maliciosos pueden eludir estas protecciones para robar datos de S3. Configurar IAM correctamente no significa que puedas ignorar las configuraciones de tus buckets de S3.
En lugar de depender exclusivamente de una configuración correcta de IAM, usa políticas de bucket de S3 para limitar el acceso directamente en el bucket.
Vulnerabilidad n.º 3: Buckets de S3 no públicos que contienen objetos públicos
Cuando se habla de la seguridad de S3, lo primero que suele venir a la mente es si el acceso público está bloqueado o permitido para un bucket de S3 determinado. Podrías suponer que, si almacenas información confidencial en un bucket de S3, te asegurarías de desactivar el acceso público, pero muchos clientes de AWS cometen este error.
Corey Quinn, presentador del pódcast “Screaming in the Cloud” y del boletín por correo electrónico “Last Week in AWS”, entrega regularmente los Premios a la negligencia con los buckets de S3. AWS incluso agregó una alerta en su consola para avisarte si un bucket permite el acceso público.
Aunque hay motivos legítimos para permitir el acceso público a un bucket de S3 (muchos sitios web se alojan en S3), la mayoría de los buckets de S3 no debería permitirlo, y esta configuración es un buen punto de partida. Sin embargo, es posible tener objetos públicos en un bucket de S3 no público. AWS explica cómo hacerlo aquí.
Pero a menudo esto se hace por error y expone datos confidenciales en un bucket de S3 que, por lo demás, es seguro. Así, puedes tener una falsa sensación de seguridad respecto de todos los datos que almacenas allí.
Cómo controlar la seguridad de Amazon S3
Amazon S3 es increíblemente flexible y fácil de usar, pero su seguridad es más compleja. Para configurarla correctamente, necesitas comprender mejor las capas de opciones de seguridad de S3 y el contexto completo de tu caso de uso específico en la nube.
Seguridad de IaC diseñada para desarrolladores
Snyk protege tu infraestructura como código desde el ciclo de vida del desarrollo de software hasta el runtime en la nube con un motor unificado de políticas como código, para que todos los equipos puedan desarrollar, implementar y operar de forma segura.