Secuestrar el rol de la pila de CloudFormation mediante un change set
Puede ejecutar un change set malicioso en una pila con su rol de servicio existente.
Concede escalada solo en combinación. Se necesitan todos estos a la vez:
cloudformation:CreateChangeSetcloudformation:ExecuteChangeSetcloudformation:ExecuteChangeSet puede ejecutar un conjunto de cambios malicioso en una pila con su rol de servicio existente, pero solo cuando se combina con cloudformation:CreateChangeSet. Combinados, llegan a acceso de administrador.
Por qué es peligroso
Un principal puede llamar a cloudformation:CreateChangeSet y cloudformation:ExecuteChangeSet sobre una pila de CloudFormation existente que ya tiene el rol de servicio. Al preparar una plantilla modificada como conjunto de cambios y ejecutarlo, el principal hace que CloudFormation aplique los cambios del atacante usando el rol objetivo, sin necesidad de iam:PassRole, porque el rol objetivo ya está vinculado a la pila. Un rol de servicio con privilegios significa que la plantilla del atacante puede aprovisionar recursos de administrador: escalada total de privilegios contra una pila en la que ya se confiaba.
En términos de MITRE ATT&CK, esto corresponde a T1578, Modificar la infraestructura de cómputo cloud, bajo la táctica de escalada de privilegios. AWS lo registra en CloudTrail como CreateChangeSet, ExecuteChangeSet. La llamada aparece en CloudTrail pero se confunde con la administración normal, así que necesita una regla para destacar.
Detección
CreateChangeSetExecuteChangeSetRequisitos previos
Una pila existente con un rol de servicio asociado; permiso para crear y ejecutar un conjunto de cambios en ella.
Táctica
Escalada de privilegios
Un control que lo eliminaría: Restringe cloudformation:CreateChangeSet/ExecuteChangeSet en las pilas que tienen un rol de servicio con privilegios.
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 cloudformation:ExecuteChangeSet?
Puede ejecutar un change set malicioso en una pila con su rol de servicio existente.
¿Qué más hace falta para que cloudformation:ExecuteChangeSet sea peligroso?
Solo se convierte en escalada cuando se combina con cloudformation:CreateChangeSet. Por sí solo no basta, y eso es lo que hace que la combinación sea fácil de pasar por alto.
¿Cómo se detecta el secuestro del rol de pila de CloudFormation mediante un conjunto de cambios?
Vigila CreateChangeSet, ExecuteChangeSet en CloudTrail. La llamada aparece en CloudTrail pero se confunde con la administración normal, así que necesita una regla para destacar.
¿Cómo se rompe esta ruta?
Un control que lo eliminaría es: Restringe cloudformation:CreateChangeSet/ExecuteChangeSet en pilas que tengan un rol de servicio con privilegios. 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?
T1578, Modificar la infraestructura de cómputo cloud, en la táctica de escalada de privilegios.
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.