A medida que la infraestructura en la nube se convierte en la columna vertebral de las empresas modernas, garantizar la seguridad de estos entornos es primordial. Dado que AWS (Amazon Web Services) sigue siendo la nube dominante, es importante que cualquier profesional de seguridad sepa dónde buscar señales de riesgo. AWS CloudTrail se destaca como una herramienta esencial para rastrear y registrar la actividad de API, proporcionando un registro completo de las acciones realizadas dentro de una cuenta de AWS. Piense en AWS CloudTrail como una auditoría o registro de eventos para todas las llamadas de API realizadas en su cuenta de AWS. Para los profesionales de seguridad, monitorear estos registros es fundamental, en particular cuando se trata de detectar un posible acceso no autorizado, como a través de claves de API robadas. Estas técnicas y muchas otras las aprendí a través de los incidentes en los que trabajé en AWS y que incorporamos a SIN FOR509Análisis forense de la nube empresarial.
1. Llamadas API y patrones de acceso inusuales
A. Aumento repentino de las solicitudes de API
Una de las primeras señales de una posible violación de seguridad es un aumento inesperado de las solicitudes de API. CloudTrail registra cada llamada de API realizada dentro de su cuenta de AWS, incluido quién realizó la llamada, cuándo se realizó y desde dónde. Un atacante con claves de API robadas podría iniciar una gran cantidad de solicitudes en un corto período de tiempo, ya sea para sondear la cuenta en busca de información o para intentar explotar ciertos servicios.
Qué buscar:
- Un aumento repentino y poco común en la actividad de la API.
- Llamadas API desde direcciones IP inusuales, particularmente de regiones donde no operan usuarios legítimos.
- Intentos de acceso a una amplia variedad de servicios, especialmente si su organización no los utiliza habitualmente.
Tenga en cuenta que el servicio de guardia (si está habilitado) marcará automáticamente este tipo de eventos, pero deberá estar atento para encontrarlos.
B. Uso no autorizado de la cuenta raíz
AWS recomienda encarecidamente evitar el uso de la cuenta raíz para las operaciones diarias debido a su alto nivel de privilegios. Cualquier acceso a la cuenta raíz, especialmente si se utilizan claves API asociadas a ella, es una señal de alerta importante.
Qué buscar:
- Llamadas API realizadas con credenciales de cuenta raíz, especialmente si dicha cuenta no se utiliza habitualmente.
- Cambios en la configuración a nivel de cuenta, como modificar la información de facturación o las configuraciones de la cuenta.
2. Actividad anómala de IAM
A. Creación sospechosa de claves de acceso
Los atacantes pueden crear nuevas claves de acceso para establecer un acceso persistente a la cuenta comprometida. Es fundamental supervisar los registros de CloudTrail para detectar la creación de nuevas claves de acceso, especialmente si estas claves se crean para cuentas que normalmente no las necesitan.
Qué buscar:
- Creación de nuevas claves de acceso para usuarios de IAM, especialmente para aquellos que no las necesitaban antes.
- Uso inmediato de claves de acceso recién creadas, lo que podría indicar que un atacante está probando o utilizando estas claves.
- Llamadas API relacionadas con `CreateAccessKey`, `ListAccessKeys` y `UpdateAccessKey`.
C. Patrones de asunción de roles
AWS permite a los usuarios asumir roles y les otorga credenciales temporales para tareas específicas. Es fundamental monitorear patrones inusuales de asunción de roles, ya que un atacante podría asumir roles para adaptarse al entorno.
Qué buscar:
- Llamadas API `AssumeRole` inusuales o frecuentes, especialmente a roles con privilegios elevados.
- Suposiciones de roles desde direcciones IP o regiones que normalmente no están asociadas con sus usuarios legítimos.
- Supuestos de roles que son seguidos de acciones inconsistentes con las operaciones comerciales normales.
3. Acceso y movimiento anómalos de datos
A. Acceso inusual al bucket S3
Amazon S3 suele ser un objetivo para los atacantes, dado que puede almacenar grandes cantidades de datos potencialmente confidenciales. Monitorear CloudTrail para detectar accesos inusuales a los buckets de S3 es esencial para detectar claves API comprometidas.
Qué buscar:
- Llamadas API relacionadas con `ListBuckets`, `GetObject` o `PutObject` para depósitos que normalmente no ven dicha actividad.
- Descargas o cargas de datos a gran escala hacia y desde depósitos S3, especialmente si ocurren fuera del horario comercial normal.
- Intentos de acceso a depósitos que almacenan datos confidenciales, como copias de seguridad o archivos confidenciales.
B. Intentos de exfiltración de datos
Un atacante puede intentar sacar datos de su entorno de AWS. Los registros de CloudTrail pueden ayudar a detectar estos intentos de exfiltración, especialmente si los patrones de transferencia de datos son inusuales.
Qué buscar:
- Grandes transferencias de datos desde servicios como S3, RDS (Relational Database Service) o DynamoDB, especialmente a direcciones IP externas o desconocidas.
- Llamadas API relacionadas con servicios como AWS DataSync o S3 Transfer Acceleration que normalmente no se utilizan en su entorno.
- Intenta crear o modificar configuraciones de replicación de datos, como aquellas que involucran la replicación entre regiones de S3.
4. Modificaciones inesperadas del grupo de seguridad
Los grupos de seguridad controlan el tráfico entrante y saliente a los recursos de AWS. Un atacante podría modificar estas configuraciones para abrir vectores de ataque adicionales, como habilitar el acceso SSH desde direcciones IP externas.
Qué buscar:
- Cambios en las reglas del grupo de seguridad que permiten el tráfico entrante desde direcciones IP fuera de su red de confianza.
- Llamadas API relacionadas con `AuthorizeSecurityGroupIngress` o `RevokeSecurityGroupEgress` que no se alinean con las operaciones normales.
- Creación de nuevos grupos de seguridad con reglas demasiado permisivas, como permitir todo el tráfico entrante en puertos comunes.
5. Pasos para mitigar el riesgo de robo de claves API
A. Hacer cumplir el principio del mínimo privilegio
Para minimizar el daño que un atacante puede causar con las claves API robadas, aplique el principio de privilegio mínimo en toda su cuenta de AWS. Asegúrese de que los usuarios y roles de IAM solo tengan los permisos necesarios para realizar sus tareas.
B. Implementar la autenticación multifactor (MFA)
Exigir MFA a todos los usuarios de IAM, en particular a aquellos con privilegios administrativos. Esto agrega una capa adicional de seguridad, lo que dificulta que los atacantes obtengan acceso, incluso si han robado claves API.
C. Rotar y auditar periódicamente las claves de acceso
Rote las claves de acceso periódicamente y asegúrese de que estén vinculadas a los usuarios de IAM que realmente las necesitan. Además, audite el uso de las claves de acceso para asegurarse de que no se estén utilizando de forma abusiva o desde ubicaciones inesperadas.
D. Habilitar y supervisar CloudTrail y GuardDuty
Asegúrese de que CloudTrail esté habilitado en todas las regiones y de que los registros estén centralizados para su análisis. Además, AWS GuardDuty puede proporcionar monitoreo en tiempo real de la actividad maliciosa, lo que ofrece otra capa de protección contra credenciales comprometidas. Considere AWS Detective para tener algo de inteligencia incorporada a partir de los hallazgos.
E. Utilice AWS Config para supervisar el cumplimiento
AWS Config se puede utilizar para supervisar el cumplimiento de las prácticas recomendadas de seguridad, incluido el uso adecuado de las políticas de IAM y los grupos de seguridad. Esta herramienta puede ayudar a identificar configuraciones incorrectas que podrían dejar su cuenta vulnerable a ataques.
Conclusión
La seguridad de su entorno de AWS depende de una supervisión atenta y de la detección rápida de anomalías en los registros de CloudTrail. Al comprender los patrones típicos de uso legítimo y estar alerta a las desviaciones de estos patrones, los profesionales de seguridad pueden detectar y responder a posibles infracciones, como las que implican el robo de claves de API, antes de que provoquen daños importantes. A medida que los entornos de nube siguen evolucionando, mantener una postura proactiva en materia de seguridad es esencial para proteger los datos confidenciales y garantizar la integridad de su infraestructura de AWS. Si desea obtener más información sobre qué buscar en AWS en busca de señales de intrusión, junto con las nubes de Microsoft y Google, puede considerar mi clase PARA509 corriendo a Iniciativa de ciberdefensa SANS 2024. Visita para509.com Para saber más.