AWS - SSM Privesc
SSM
Para más información sobre SSM, consulta:
pageAWS - EC2, EBS, ELB, SSM, VPC & VPN Enumssm:SendCommand
ssm:SendCommand
Un atacante con el permiso ssm:SendCommand
puede ejecutar comandos en instancias que ejecutan el Agente Amazon SSM y comprometer el Rol IAM que se está ejecutando dentro de ella.
En caso de que estés utilizando esta técnica para escalar privilegios dentro de una instancia EC2 que ya ha sido comprometida, simplemente puedes capturar la reverse shell localmente con:
Impacto Potencial: Escalada de privilegios directa a los roles IAM de EC2 adjuntos a las instancias en ejecución con agentes SSM en funcionamiento.
ssm:StartSession
ssm:StartSession
Un atacante con el permiso ssm:StartSession
puede iniciar una sesión similar a SSH en las instancias que ejecutan el Agente SSM de Amazon y comprometer el Rol IAM que se está ejecutando dentro de ella.
Para comenzar una sesión, necesitas tener instalado el SessionManagerPlugin: https://docs.aws.amazon.com/systems-manager/latest/userguide/install-plugin-macos-overview.html
Impacto potencial: Escalada de privilegios directa a los roles IAM de EC2 adjuntos a las instancias en ejecución con agentes de SSM en funcionamiento.
Escalada de privilegios a ECS
Cuando las tareas de ECS se ejecutan con ExecuteCommand
habilitado, los usuarios con suficientes permisos pueden usar ecs execute-command
para ejecutar un comando dentro del contenedor.
Según la documentación, esto se logra creando un canal seguro entre el dispositivo que se utiliza para iniciar el comando "exec" y el contenedor de destino con SSM Session Manager.
Por lo tanto, los usuarios con ssm:StartSession
podrán obtener una shell dentro de las tareas de ECS con esa opción habilitada simplemente ejecutando:
Impacto potencial: Escalada de privilegios directa a los roles de ECS
IAM adjuntos a las tareas en ejecución con ExecuteCommand
habilitado.
ssm:ResumeSession
ssm:ResumeSession
Un atacante con el permiso ssm:ResumeSession
puede re-iniciar una sesión similar a SSH en las instancias que ejecutan el Agente Amazon SSM con un estado de sesión SSM desconectado y comprometer el Rol IAM que se está ejecutando dentro de ella.
Impacto Potencial: Escalada de privilegios directa a los roles de IAM de EC2 adjuntos a las instancias en ejecución con agentes de SSM en ejecución y sesiones desconectadas.
ssm:DescribeParameters
, (ssm:GetParameter
| ssm:GetParameters
)
ssm:DescribeParameters
, (ssm:GetParameter
| ssm:GetParameters
)Un atacante con los permisos mencionados podrá listar los parámetros de SSM y leerlos en texto claro. En estos parámetros, a menudo se puede encontrar información sensible como claves SSH o claves API.
Impacto potencial: Encontrar información sensible dentro de los parámetros.
ssm:ListCommands
ssm:ListCommands
Un atacante con este permiso puede listar todos los comandos enviados y, con suerte, encontrar información sensible en ellos.
Impacto Potencial: Encontrar información sensible dentro de las líneas de comando.
ssm:GetCommandInvocation
, (ssm:ListCommandInvocations
| ssm:ListCommands
)
ssm:GetCommandInvocation
, (ssm:ListCommandInvocations
| ssm:ListCommands
)Un atacante con estos permisos puede listar todos los comandos enviados y leer la salida generada, con suerte encontrando información sensible en ella.
Impacto potencial: Encontrar información sensible dentro de la salida de las líneas de comando.
Codebuild
También puedes usar SSM para acceder a un proyecto de codebuild en construcción:
pageAWS - Codebuild PrivescÚltima actualización