Leer un bucket concedido a una cuenta de AWS externa
La política de un bucket concede acceso de lectura a una cuenta externa de AWS..
No se necesita ningún permiso de IAM. La exposición está en la propia configuración del recurso, así que cualquiera a quien nombre la política, o todo el mundo si es pública, puede acceder a él.
Esto es una exposición de configuración, no un permiso. La política de un bucket concede acceso de lectura a una cuenta de AWS externa. Cualquiera a quien la política se lo permita, o todo el mundo si es pública, puede acceder a él sin ningún acceso IAM propio.
Por qué es peligroso
La política de recursos de un bucket concede acceso a una cuenta externa de AWS sin ninguna condición que lo limite; un atacante que controle esa cuenta puede leer sus objetos directamente.
En términos de MITRE ATT&CK, esto corresponde a T1530, Datos de almacenamiento cloud, bajo la táctica de recopilación. AWS lo registra en CloudTrail como s3:GetBucketPolicy / GetObject (CloudTrail / eventos de datos de S3). La llamada es silenciosa frente a la actividad normal, así que es fácil pasarla por alto sin una regla específica.
Detección
s3:GetBucketPolicy / GetObject (CloudTrail / S3 data events)Requisitos previos
Control de la cuenta de AWS externa indicada; la política del bucket se lo concede sin ninguna condición que lo limite.
MITRE ATT&CK
T1530 · Datos del almacenamiento cloudTáctica
Recopilación
Un control que lo eliminaría: Acota la concesión a tu organización (aws:PrincipalOrgID) o a un SourceArn, o elimina el principal externo.
Aplicarla o no depende de cómo se use el permiso en tu entorno, así que es una decisión de negocio y no una corrección automática. El mismo permiso puede ser imprescindible en una cuenta y puro riesgo en otra.
Pathbreak confirma si esta ruta se resuelve en tu cuenta, la clasifica frente a las demás según cuánto abre y usa tu modelo de amenazas y tu contexto de negocio para mostrar qué rutas merece la pena cortar.
Preguntas
¿Qué permite esta configuración?
La política de un bucket concede acceso de lectura a una cuenta externa de AWS.
¿Esto necesita algún permiso de IAM?
No. Es una exposición de configuración. Cualquiera a quien nombre la política de recursos, o todo el mundo si es pública, puede acceder a él sin tener ningún permiso propio.
¿Cómo se detecta la lectura de un bucket concedido a una cuenta de AWS externa?
Vigila s3:GetBucketPolicy / GetObject (CloudTrail / S3 data events) en CloudTrail. La llamada es silenciosa frente a la actividad normal, así que es fácil pasarla por alto sin una regla específica.
¿Cómo se rompe esta ruta?
Un control que lo eliminaría es: Acota la concesión a tu organización (aws:PrincipalOrgID) o a un SourceArn, o elimina el principal externo. Aplicarla o no depende de cómo se use el permiso en tu cuenta, así que es una decisión de negocio y no una corrección automática.
¿De qué técnica de MITRE ATT&CK se trata?
T1530, Datos del almacenamiento cloud, en la táctica de recopilación.
Rutas relacionadas
Referencias
Encuéntralo en tu propia cuenta
Ejecutamos un escaneo de solo lectura de una cuenta de AWS y te mostramos cuáles de estas rutas existen, ordenadas por radio de impacto, con el cambio que rompe cada una. Primeras rutas validadas en menos de una hora.